根据一些需求,我想在不在派生类中编写方法/构造函数的情况下将基类的所有构造函数/方法添加到派生类中。
为此,我编写了以下代码,但它不起作用。 它显示错误“ConsoleApplication1.TestClass2'不包含一个带1个参数的构造函数”。
如何修复它?
我不能在基类中创建任何方法或构造函数。 除了继承一个类之外,还有其他方法吗?
我的代码:
namespace ConsoleApplication1
{
public class TestClass1
{
public TestClass1()
{
Console.WriteLine("This is base class constructor1");
}
public TestClass1(string str1,string str2)
{
Console.WriteLine("This is base class constructor2");
}
public TestClass1(string str1,string str2,string str3)
{
Console.WriteLine("This is base class constructor3");
}
public TestClass1(string str1,string str2,string str3,string str4)
{
Console.WriteLine("This is base class constructor4");
}
}
public class TestClass2 : TestClass1
{
}
class Program
{
static void Main(string[] args)
{
TestClass2 test = new TestClass2("test");
TestClass2 test1 = new TestClass2("test,test");
}
}
}
:base(...)
语法从基类链接构造函数。你的问题是为什么不能在派生类中使用带参数的构造函数的重复,并可能有其他类似的问题。 - Jeppe Stig NielsenAlt+Ins
来生成构造函数。 - Eli Arbel