Q52.
關於程式設計師定義的Java 程式Exception 類別,下述何者正確?
電腦軟體設計(JAVA) · 乙級 · Java · Q52
難易度分析
2 / 5
本題考查 Java 語言中關於自定義類別繼承的基礎語法規範,屬於對核心定義的直接記憶與辨識,無需複雜的邏輯推演即可得出結論。
正確答案:④必須從Exception 或其子類別導出
④ 必須從Exception 或其子類別導出:根據 Java 語言規範,程式設計師自訂的例外類別必須繼承自 Exception 或其子類別(如 RuntimeException),如此才能被 JVM 的例外傳播機制識別與處理。
錯誤選項解析
- ① 可以從現存任何類別導出:自訂 Exception 類別 不能從任意類別繼承,Java 的例外處理機制要求必須繼承自 Throwable 的子類別(即 Exception 或 RuntimeException),否則無法被 try-catch 機制正確處理。
- ② 必須定義兩個以上的建構子:自訂 Exception 類別不需要定義多個建構子,即使只定義一個無參數建構子或僅呼叫 `super(message)` 的單參數建構子,仍可正常運作。
- ③ 必須有兩個以上的instance 變數:自訂 Exception 類別不需要任何 instance 變數,許多標準例外類別(如 IllegalArgumentException)僅依賴父類別繼承的 detailMessage 屬性即可滿足需求。
Learning Tip
"此題核心考點為自訂例外類別的繼承規則。常見陷阱是混淆「可從任何類別繼承」與「必須從 Exception 體系繼承」的差異。實務上,若需強制呼叫者處理例外,應繼承 Exception(checked exception);若為程式邏輯錯誤,則繼承 RuntimeException(unchecked exception),此為 Java 例外處理設計的關鍵觀念。"
學員答題分佈
①可以從現存任何類別導出0%
②必須定義兩個以上的建構子0%
③必須有兩個以上的instance 變數0%
④必須從Exception 或其子類別導出0%
此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!