What is the output of running class Test?
public class Test {
public static void main(String[] args) {
new Circle9();
}
}
public abstract class GeometricObject {
protected GeometricObject() {
System.out.print("A");
}
protected GeometricObject(String color, boolean filled) {
System.out.print("B");
}
}
public class Circle9 extends GeometricObject {
/** No-arg constructor */
public Circle9() {
this(1.0);
System.out.print("C");
}
/** Construct circle with a specified radius */
public Circle9(double radius) {
this(radius, "white", false);
System.out.print("D");
}
/** Construct a circle with specified radius, filled, and color */
public Circle9(double radius, String color, boolean filled) {
super(color, filled);
System.out.print("E");
}
}
任何人都可以在一些細節爲什麼這個代碼的輸出是BEDC解釋一下嗎?這是我正在閱讀的一本書的練習題。我不明白。對於我來說,內在是一個很難的話題。需要幫助理解這個代碼的輸出。
我投票關閉這一問題作爲題外話,因爲「解釋我這一切」不是一個具體的問題陳述。通過手動或調試器來瀏覽代碼,瞭解多態性是如何工作的,如何更徹底地閱讀您的書籍,如果在此之後仍然存在一個非常具體的問題,請發佈一個新問題。我們不是在這裏解釋整個主題。 –