Examly題庫立即開始練習
2 類科共用卷
地方政府公務人員四等-電子工程類科地方政府公務人員四等-電信工程類科
計算機概要10625單選題

請問下列 Java 程式的執行結果為何? class B { public int ID; public B(int w) { ID=w; } public B() { this(300); } public void speak() { System.out.println("我的編號是" + ID); } } class C extends B { public String name; public C(String n, int w) { super(w); name = n; } public C() { this("小英", 789); } public void speak() { System.out.println("我是" + name); System.out.println("我的編號是" + ID); } } class A { public static void main(String[] args) { B staff1, staff2; staff1 = new C("小明", 543); staff2 = new C(); staff1.speak(); staff2.speak(); } }

A我是小明 我的編號是 543 我是小英 我的編號是 789正確答案
B我是小明 我的編號是 543 我是小明 我的編號是 300
C我是小明 我的編號是 543
D我是小明 我的編號是 300
答案與詳解
A
正確答案
動態繫結 + 建構子鏈:this(...)呼叫自身建構子、super(w)呼叫父類建構子,兩個C物件分別帶入各自參數。

為什麼答案是 A

staff1=new C("小明",543)→name=小明, ID=543;staff2=new C()→this("小英",789)→name=小英, ID=789。兩者皆呼叫C覆寫的speak(),正確印出四行。

考點:建構子鏈+多型考點:this建構子誤解考點:輸出遺漏考點:靜態繫結誤解
載入中…

計算機概要 相關題目

想練更多計算機概要考古題?

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

Download on theApp Store即將推出Google Play
黑皮