[OCAJP]建構子2

Given:

And given the code fragment:

Which code fragment should you use at line n1 to instantiate the dvd object successfully?

A.

B.

C.

D.

題解

由於第15行的DVD類別之建構子原先並沒有使用super或是this敘述來呼叫別的建構子,因此Java會在編譯的時候將它改成:

因為CD類別並不存在「CD()」這樣的建構子,如此一來便會造成編譯錯誤,因此需要插入一些程式至line n1來解決這個問題。

選項A並沒有使用super或是this敘述來呼叫別的建構子,無法解決問題。

選項B用來呼叫自身其它建構子的this敘述會發生錯誤,因為不是在建構子的第一行呼叫。

選項C正確。

選項D用來呼叫自身父類別建構子的super敘述會發生錯誤,因為不是在建構子的第一行呼叫。

關於作者

Magic Len

各位好,我是Magic Len,是這網站的管理員。我是台灣台中大肚山上人,畢業於台中高工資訊科和台灣科技大學資訊工程系,曾在桃機航警局服役。我熱愛自然也熱愛科學,喜歡和別人分享自己的知識與經驗。如果你有興趣認識我,可以加我的Facebook,並且請註明是從MagicLen來的。

相關文章