一直对继承问题有些不清楚,因为要项目开发中用得也不多,所以也就没有深究。最近重新看继承的问题,对派生类中继承甚基类的构造函数问题总有些凝问。在派生类如何隐藏基类中的构造函数。在派生类可以隐藏基类的方法,但好像找不到隐藏基类中构造函数的方法。如果派生类和基类中都有一个无参的构造函数,在对派生类实例化时把基类和派生类的构造函数都执行了。如:
class mybasec
{ public mybasec(int i)
{
Console.WriteLine("这是基类中的有参函数变量名是i,值为{0}", i);
}
}
class myDerivec:mybasec
{
public myDerivec(int i)
{
Console.WriteLine("这是派生类中的有参函数变量名是i,值为{0}", i);
}
}
问题1:程序编译错误,问题是基类中不包含0参数的构造函数,为什么不行。
问题2:在myDerivec myd2 = new myDerivec(6);时不想执行基类中的构造函数,有没有办法把基类中的构造函数隐藏?
潇潇雨雨
青春有我