Q150.
Java 語言程式如下,以下那些存取修飾子可以合法置於註解 /*here*/之處?
電腦軟體設計(JAVA) · 乙級 · Java · Q150
難易度分析
4 / 5
本題採複選形式,要求考生精確區分不同類別層級(頂層與內部)可使用的存取修飾子,且包含非本語言的語法陷阱,增加了判別複雜度。
正確答案 (複選):②, ④
- ② protected:protected 修飾子可用於內部類別,使其對同一套件及所有子類別可見,符合 Java 存取控制規範。
- ④ 不需加修飾子:不需加修飾子(即預設存取層級,又稱 package-private)是合法的,此時類別僅對同一套件內的類別可見。
錯誤選項解析
- ① private:private 修飾子僅允許用於內部類別(Inner Class),若為頂層類別(Top-level Class)則不合法,會導致編譯錯誤。
- ③ friend:friend 並非 Java 的關鍵字或存取修飾子,此為 C++ 語言的特性,在 Java 中會造成編譯失敗。
Learning Tip
"本題考點為 Java 類別的存取修飾子規則。關鍵陷阱:頂層類別僅能使用 public 或預設(package-private),而 內部類別則可使用全部四種層級(public、protected、預設、private)。另外,Java 中不存在 friend 修飾子,此為常見混淆選項。實務上應依據最小權限原則選擇適當的存取層級,以確保封裝性。"
學員答題分佈
①private0%
②protected0%
③friend0%
④不需加修飾子0%
此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!