请参阅下面的简单程序。
public class Class2
{
public Class2()
{
Console.WriteLine("Base class const");
}
public void func()
{
Console.WriteLine("Base class method");
}
}
public class DClass : Class2
{
public DClass()
{
Console.WriteLine("Child class const");
}
public void func()
{
Console.WriteLine("Child class method");
}
}
现在主要是我打电话
Class2 obj2 = new DClass();
obj2.func();
该计划的输出应该是什么以及为什么。我不想使用new
关键字或虚拟覆盖关键字。
答案 0 :(得分:0)
从它的外观来看,这个函数将被称为
--> public void func()
{
Console.WriteLine("Child class method-ye nai call ho raha"");
}
你问为什么,因为在对象声明中你明确声明obj2是一个新类DClass,它是Class2的子类 - > Class2 obj2 = new DClass();
obj2.func();