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

第44題

若一Java 程式的 Recursive Method 沒有基本案例(Base Case),下述何者正確?

題目

若一Java 程式的 Recursive Method 沒有基本案例(Base Case),下述何者正確?

  1. (1) 程式將產生不正確結果
  2. (2) 產生編譯錯誤
  3. (3) 產生MissingBaseCaseException
  4. (4) 程式無法停止

官方答案

(4) 程式無法停止

解析

遞迴方法必須有基本案例(Base Case)作為終止條件,讓遞迴在到達邊界時停止。若完全沒有基本案例,每次呼叫都會再呼叫自己,遞迴深度不斷增加,程式永遠不會結束,最後因堆疊空間耗盡而拋出StackOverflowError。Java編譯器只檢查語法,不會檢查這類邏輯錯誤,所以不會產生編譯錯誤;Java也沒有MissingBaseCaseException這種例外類別。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料