以下关于虚方法的说法不正确的是()
A. 子类不能改变基类中声明的非虚方法的实现。
B. 在子类中隐藏了基类的非虚方法,通过基类对象访问的方法是子类方法的实现。
C. 重写方法只能重写基类的虚方法。
D. 虚方法的实现可以由派生类来实现。
阅读以下程序class A{public void F(){Console.Write(“A”);}}class B:A{public void F(){Console.Write(“B”);}}class Test{static void Main(){A a = new A();B b = new B();A c = b;a.F();b.F();c.F();}}以上程序运行后的结果是()
AAB
B. ABB
C. ABA
D. BAB
阅读以下程序class A{public void F(){Console.Write(“A”);}public virtual void G(){Console.Write(“C”);}}class B:A{new public void F(){Console.Write(“B”);}public override void G(){Console.Write(“D”);}}class Test{static void Main(){B b = new B();A a = b;a.F();b.F();a.G();b.G();}}以上程序运行的结果是()
ABCD
B. ABDD
C. ABCC
D. BBCD
以下关于重写方法的说法不正确的是()
A. 重写方法只能重写基类的虚方法。
B. 重写方法可以重写基类的非虚方法。
C. 只有在包含了override修饰符时,一个方法才能重写另一个方法。
D. 如果没有包含override修饰符,声明一个与从基类继承而来的方法具有相同签名的方法只会隐藏被继承的基类方法。