Given:



Which options enable the code to compile?

A.
Replace the code fragment at line n1 with:

B.
At line n2 insert:

C.
Replace the code fragment at line n3 with:

D.
At line n4 insert:

題解

在尚未修改任何程式的時候,EBook類別會因為沒有實作出Readable介面的setBookMark方法而發生編譯錯誤。

選項A,將抽象類別Book改成非抽象類別。如此一來Book類別一定要實作出Readable介面的所有方法,會造成編譯錯誤。

選項B,在Book抽象類別內新增setBookMark抽象方法,在EBook類別內依然沒有將這個抽象方法實作出來,所以還是一樣會發生編譯錯誤。

選項C,將EBook類別改成抽象類別,如此一來EBook類別內不需實作出Readable介面的所有方法也沒關係。

選項D,在EBook內實作出setBookMark方法,使得Readable介面的所有方法都被實作完成。