民國101年 第2梯次 電腦軟體設計(JAVA)乙級 學科
第56題
下列何者可以修正以下J a v a 程式碼的錯誤?
題目
下列何者可以修正以下J a v a 程式碼的錯誤?
- (1) 移除r e t u r n ( x + 5 ) ; 的( )
- (2) 移除s e t C o d e m e t h o d 的a b s t r a c t
- (3) 將p r o t e c t e d 更正為p u b l i c
- (4) 加入a b s t r a c t 於c l a s s 宣告的前面
官方答案
(4) 加入a b s t r a c t 於c l a s s 宣告的前面
解析
這段程式的錯誤在於:類別內宣告了抽象方法 setCode,但類別本身沒有宣告成抽象類別,而 Java 規定含有 abstract 方法的類別必須宣告為 abstract,因此在 class 前面加上 abstract 就能通過編譯。return (x+5); 的括號只是多餘,語法仍然合法;把 protected 改成 public 只改變存取範圍,與此錯誤無關;若把方法的 abstract 移除,該方法就變成沒有主體(沒有大括號內容)的方法宣告,編譯器會回報缺少方法主體,錯誤依然存在。故選 4。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。