在子类中重写父类中的某个函数和使用new定义一个同名的函数有什么区别? 在子类中重写父类中的某个函数和使用new定义一个同名的函数有什么区别? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 new 重定义一个函数,返回类型可与继承的不一样重写必须和父类一个鸟样 楼上正解...new是覆盖...两者没有任何关系 参考: static void Main(string[] args) { BaseClass dc11 = new DerivedClass1(); DerivedClass1 dc12 = new DerivedClass1(); BaseClass dc21 = new DerivedClass2(); DerivedClass2 dc22 = new DerivedClass2(); dc11.Method(); dc12.Method(); dc21.Method(); dc22.Method(); } class BaseClass { public virtual void Method() { Console.WriteLine("base"); } } class DerivedClass1:BaseClass { public override void Method() { Console.WriteLine("DerivedClass1"); } } class DerivedClass2 : BaseClass { public new void Method() { Console.WriteLine("DerivedClass2"); } } 拆分字符串 form控件的问题 [100分]求写法优化 vs2005自带的水晶报表如何打印带条码的标签 如何产生1到4的随机数? 电子商务的在线支付问题。 再问一个超级菜的问题 有没有学习WCF的资料啊 在线等待!请问如何判断textBox控件中是否输入的是字母! C#学习网站 请教简便方法 关于treeview的问题
重写必须和父类一个鸟样
new是覆盖...两者没有任何关系
{
BaseClass dc11 = new DerivedClass1();
DerivedClass1 dc12 = new DerivedClass1();
BaseClass dc21 = new DerivedClass2();
DerivedClass2 dc22 = new DerivedClass2();
dc11.Method();
dc12.Method();
dc21.Method();
dc22.Method();
} class BaseClass
{
public virtual void Method()
{
Console.WriteLine("base");
}
} class DerivedClass1:BaseClass
{
public override void Method()
{
Console.WriteLine("DerivedClass1");
}
} class DerivedClass2 : BaseClass
{
public new void Method()
{
Console.WriteLine("DerivedClass2");
}
}