Examly題庫立即開始練習
國中教甄|資訊科技資訊科技107 年第 27 題單選題
📖 閱讀測驗 · 共用前文
public class Main { public static void main(String [] args) { CA oA = new CA(); CB oB = new CB(); System.out.println(oB.ga()+”,”+oB.gsa()+”,”+oB.gb()+”,”+oB.gsb()+”,”+oB.gc()); oB.sa(5); oB.gsa(); oB.sb(6); oB.gsb(); System.out.println(oB.ga()+”,”+oB.gsa()+”,”+oB.gb()+”,”+oB.gsb()+”,”+oB.gc()); } } public class CA { protected int a; private int b; CA() {a = 1;b = 2;} int ga() { return a;} int gb() { return b;} } public class CB extends CA { private int b; private int c; CB() {b = 3;c = 4;} int ga() {return a;} int gb() {return b;} int gc() {return c;} void sa(int x){a = x;} int gsa() {return super.ga();} void sb(int x){b = x;} int gsb() {return super.gb();} }

執行上述程式的 main 之後,會得到兩列的文字。下列何者是第一列文字?

A0,1,3,2,4
B1,1,2,2,4
C0,1,3,2,4
D1,1,3,2,4正確答案
答案與詳解
D
正確答案
第一列輸出結果取決於物件初始化時父類別與子類別成員變數的初始值,以及方法覆寫與 super 關鍵字的呼叫結果。

逐選項解析

A0,1,3,2,4✕ 錯誤
誤以為整數變數預設值為 0,忽略了建構子中已將 a 初始化為 1。
B1,1,2,2,4✕ 錯誤
誤以為 gb() 會呼叫父類別的 gb() 或存取父類別的 b,忽略了子類別 CB 已定義自己的 b 並覆寫 gb() 方法。
C0,1,3,2,4✕ 錯誤
D1,1,3,2,4✓ 正確

立即註冊,看完整詳解

這題的完整詳解,註冊就能看 · 每天 2 題免費

精選詳解
  • 完整逐選項解析
  • 秒殺解題技巧與破題關鍵
  • 關鍵知識表整理
  • 陷阱與易錯提醒
  • 同考點歷屆題庫連續刷題與錯題本

資訊科技 相關題目

想練更多資訊科技考古題?

Examly 收錄 50 萬+ 道歷屆題目,每題都有像這樣的精選詳解。免費下載,立即開練。

Examly