What is the result?

A.

C B A

B.

C

C.

A B C

D. Compilation fails at line n1 and line n2

題解

程式第22行,實體化出了C的物件,因此會執行C的建構子。

建構子若並沒有使用「super」或是「this」來定義要先執行哪個建構子,在編譯階段時會自動在第一行加上「super();」。因此程式其實可以擴展成這樣:

所以會依序輸出「A 」、「B 」、「C 」