LONGEPASS
Q24.

下列有關Java 例外處理(Exception Handling)之敘述,何者正確?

電腦軟體設計共同科目 · 乙級 · Q24

難易度分析

2 / 5

本題考查對 Java 例外處理基本定義與機制的理解,選項涵蓋了類別屬性、作用域定義、傳播路徑及擴展性等基礎概念,屬於核心知識點的單純辨析。

正確答案:①例外是一種特殊之類別

① 例外是一種特殊之類別:在 Java 中,例外確實是一種特殊的類別,所有例外都繼承自 `Throwable` 類別,並分為 `Error` 與 `Exception` 兩大分支,`Exception` 下再區分為受檢例外與非受檢例外。

錯誤選項解析

  • ② 例外採用動態的有效範圍(Dynamic Scoping):Java 例外處理採用的是靜態詞法範圍(Lexical Scoping),由 `try-catch` 區塊在程式碼中的結構決定,而非動態有效範圍。`catch` 區塊的比對依據是程式撰寫時的巢狀結構。
  • ③ 例外的傳遞依照程序引用(Procedure Call)先後順序:例外的傳遞是沿著呼叫堆疊(Call Stack)由下往上回溯,而非依照程序引用的先後順序。當例外未被當前方法捕獲時,會逐層向上拋給呼叫者,直到被處理或程式終止。
  • ④ 程式設計師不可以自行設計新的例外:程式設計師可以自行定義新的例外類別,只需繼承 `Exception`(受檢例外)或 `RuntimeException`(非受檢例外)即可建立自訂例外,這在企業開發中是常見的設計模式。
Learning Tip

"本題核心考點為 Java 例外類別階層架構與例外傳播機制。常考陷阱在於混淆 `throw`(拋出例外)與 `throws`(宣告可能拋出的例外),以及誤認所有例外都必須強制處理——實際上繼承自 `RuntimeException` 的非受檢例外(如 `NullPointerException`、`ArrayIndexOutOfBoundsException`)不需強制 `try-catch`。實務上應優先使用標準例外類別,僅在業務邏輯需要時才建立自訂例外。"

學員答題分佈

①例外是一種特殊之類別0%
②例外採用動態的有效範圍(Dynamic Scoping)0%
③例外的傳遞依照程序引用(Procedure Call)先後順序0%
④程式設計師不可以自行設計新的例外0%

此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!

相似類型題目