我需要知道此代码的输出。但这不起作用。也许代码是错误的。我仍在学习如何使用Java,我尝试修复了几个小时,但还是没有运气。
这是代码:
public class A { public A() { System.out.println ("A"); } } public class B extends A { public B() { System.out.println ("B"); } } public class C extends B { public C() { System.out.println ("C"); } } public static void main(String args[]) { A a = new A(); B b = new B(); C c = new C(); }
谁能告诉我代码中有什么错误或遗漏吗?
例如:
public class Example { public static void main(String...args) { new C(); } public static class A { public A() { System.out.println("A"); } } public static class B extends A { public B() { System.out.println("B"); } } public static class C extends B { public C() { System.out.println("C"); } } }
另请注意,这可能无法打印您期望的结果。它实际上会打印:
A B C
为什么?构造函数总是链接到超类。