C#基类与派生类的问题
class mybasec
{ public mybasec(int i)
{
Console.WriteLine("这是基类中的有参函数变量名是i,值为{0}", i);
}
}
class myDerivec:mybasec
{
public myDerivec(int i)
{
Console.WriteLine("这是派生类中的有参函数变量名是i,值为{0}", i);
}
}
{ public mybasec(int i)
{
Console.WriteLine("这是基类中的有参函数变量名是i,值为{0}", i);
}
}
class myDerivec:mybasec
{
public myDerivec(int i)
{
Console.WriteLine("这是派生类中的有参函数变量名是i,值为{0}", i);
}
}
问题1:程序编译错误,问题是基类中不包含0参数的构造函数,为什么不行。
第一个问题,子类实例化时一定会调用基类的构造函数,因为基类也一样要被实例化,默认是调用无参的构造函数,而你这里没有,所有这里会报错。当然你也可以手工指定调用哪个基类的构造函数,如:
public myDerivec(int i):base(i),这样指明后上面的程序就不会报错了。
http://home.cnblogs.com/q/9311/