民國101年 第2梯次 電腦軟體設計(JAVA)乙級 學科

第56題

下列何者可以修正以下J a v a 程式碼的錯誤?

題目

下列何者可以修正以下J a v a 程式碼的錯誤?

  1. (1) 移除r e t u r n ( x + 5 ) ; 的( )
  2. (2) 移除s e t C o d e m e t h o d 的a b s t r a c t
  3. (3) 將p r o t e c t e d 更正為p u b l i c
  4. (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 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料