题目内容

阅读以下程序class A{public virtual void G(){Console.Write(“A”);}}class B:A{public virtual void G(){Console.Write(“B”);}}class C:B{public override void G(){Console.Write(“C”);}}class Test{static void Main(){A a = new A();B b = new B();C c = new C();A d = c;a.G();b.G();c.G();d.G();}}以上程序以下后的结果是()

ABCC
B. ABCB
C. ABCA
D. ABBC

查看答案
更多问题

阅读以下程序class A{public virtual void G(){Console.Write(“A”);}}class B:A{public override void G(){Console.Write(“B”);}}class C:B{new public virtual void G(){Console.Write(“C”);}}class D:C{public override void G(){Console.Write(“D”);}}class Test{static void Main(){D d = new D();A a = d;B b = d;C c = d;a.G();b.G();c.G();d.G();}}以上程序运行后的输出结果是()

ABCD
B. ABDD
C. BBDD
D. AACC

阅读以下程序class A{public virtual string Name(){get{ return “A”;}}}class B:A{public override string Name(){get{ return “B”;}}}class Test{static void Main(){A a = new A();B b = new B();A c = b;Console.Write(a.Name);Console.Write(b.Name);Console.Write(c.Name);}}以上程序运行后的输出结果是()

AAA
B. AAB
C. ABA
D. ABB

阅读以下程序class A{public string Name(){get{ return “A”;}}}class B:A{new public string Name(){get{ return “B”;}}}class Test{static void Main(){A a = new A();B b = new B();A c = b;Console.Write(a.Name);Console.Write(b.Name);Console.Write(c.Name);}}以上程序运行后的输出结果是()

AAA
B. AAB
C. ABA
D. ABB

以下关于base的说法不正确的是()

A. base主要用于访问被当前类的成员所隐藏的基类成员。
B. base只能用于实例构造函数、实例方法或实例访问器中。
C. 重写声明不可以使用base来访问已重写了的基方法。
D. base.I等价于((B)this).I。

答案查题题库