繼承多態(tài)練習(xí)題_第1頁(yè)
繼承多態(tài)練習(xí)題_第2頁(yè)
繼承多態(tài)練習(xí)題_第3頁(yè)
繼承多態(tài)練習(xí)題_第4頁(yè)
繼承多態(tài)練習(xí)題_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第七章繼承多態(tài)一、選擇題:1、分析: class A A() class B extends A /系統(tǒng)自動(dòng)生成的構(gòu)造方法和類的訪問權(quán)限一樣 哪兩種說法是正確的? ()A:類B的構(gòu)造方法是public的. B:類B的構(gòu)造方法包含對(duì)this()的調(diào)用.C:類B的構(gòu)造方法沒有參數(shù). D:類B的構(gòu)造方法包含對(duì)super()的調(diào)用.2、運(yùn)行結(jié)果是:() class Base Base() System.out.print("Base"); public class Alpha extends Base public static void main( String args ) n

2、ew Alpha(); new Base(); A: BaseB: BaseBaseC: 編譯失敗. D: 沒有輸出.E: 運(yùn)行時(shí)異常.3. 程序的運(yùn)行結(jié)果是?()A: 編譯失敗.B: hello from aC: hello from bD: hello from b E: hello from ahello from a hello from b4. 運(yùn)行結(jié)果是:() class TestSuper TestSuper(int i) class TestSub extends TestSuper class TestAll public static void main (String a

3、rgs) new TestSub(); A: 編譯失敗.B: 程序運(yùn)行沒有異常.C: 第7行拋出異常.D: 第2行拋出異常.5. 程序的運(yùn)行結(jié)果是?()A: 0B: 1C: 2D: 編譯失敗.6. 對(duì)于語(yǔ)句"B is a D" 和 "B has a C",一下哪兩種說法是正確的? ()A:D是B.B:B是D.C:D是C.D:B是C.E:D繼承 B.F:B 繼承D.7. 運(yùn)行結(jié)果是?()A: 1B: 2C: 第8行編譯失敗.D: 第14行編譯失敗.8. 分析: public class ConstOver public ConstOver(int x, i

4、nt y, int z) 哪兩個(gè)是對(duì)ConstOver 的構(gòu)造方法的重載? ()A:ConstOver() B:protected int ConstOver() C:private ConstOver(int z, int y, byte x) D:public Object ConstOver(int x, int y, int z) E:public void ConstOver(byte x, byte y, byte z) 9. 運(yùn)行結(jié)果是?()A: 4,4B: 4,5C: 5,4D: 5,5E: 編譯失敗.10. 分析: public class X public X aMetho

5、d() return this; 1) public class Y extends X 2) 3) 在第2行可以插入哪兩項(xiàng)? ()A:public void aMethod() B:private void aMethod() C:public void aMethod(String s) D:private Y aMethod() return null; E:public X aMethod() return new Y(); 11. 運(yùn)行結(jié)果是?()A: 4,4B: 4,5C: 5,4D: 5,5E: 編譯失敗.12. 以下哪兩個(gè)重載了方法setVar()? () public cla

6、ss MethodOver public void setVar(int a, int b, float c) A:private void setVar(int a, float c, int b) B:public int setVar(int a, float c, int b) return a;C:protected void setVar(int a, int b, float c) D:public int setVar(int a, int b, float c) return a;E:protected float setVar(int a, int b, float c)

7、return c;13. 分析: 1) class BaseClass 2) private float x = 1.0f; 3) protected void setVar(float f) x = f; 4) 5) class SubClass extends BaseClass 6) private float x = 2.0f; 7) / insert code here 8) 在第7行插入哪兩個(gè)覆蓋了方法setVar()? ()A:void setVar(float f) x = f; B:public void setVar(int f) x = f; C:public void

8、setVar(float f) x = f; D:public double setVar(float f) return f; E:public final void setVar(float f) x = f; F:protected float setVar() x = 3.0f; return 3.0f; 14. 運(yùn)行結(jié)果是?()A: 1B: 2C: 運(yùn)行時(shí)異常.D: 第8行編譯錯(cuò)誤.E: 第14行編譯錯(cuò)誤.15. 分析: class A protected int method1(int a, int b) return 0; 在A的子類中,以下哪兩個(gè)方法是合法的? ()A:publ

9、ic int method1(int a, int b) return 0; B:private int method1(int a, long b) return 0; C:private int method1(int a, int b) return 0; D:public short method1(int a, int b) return 0; E:static protected int method1(int a, int b) return 0; 16. 分析: 1) public abstract class Test 2) public abstract void meth

10、odA(); 3) 4) public abstract void methodB()5) 6) System.out.println("Hello"); 7) 8) 哪兩種改法,可以使程序通過編譯? ()A:給方法methodA()加方法體C:在Test的聲明中去掉abstractB:用""替換第5-7行D:在方法methodA()的聲明中去掉abstractE: 在方法methodB()的聲明中去掉abstract17. 運(yùn)行結(jié)果是:() 1) abstract class AbstractIt 2) abstract float getFloat(

11、); 3) 4) public class AbstractTest extends AbstractIt 5) private float f1 = 1.0f; 6) private float getFloat() return f1; 7) A: 編譯成功.B: 運(yùn)行時(shí)異常.C: 第2行編譯失敗.D: 第6行編譯失敗.18. 在接口中哪兩個(gè)方法的聲明是合法的? ()A:void method1();B:public void method2();C:static public void method5();D:protected void method3();E:final public

12、 void method4();19. 分析: 1) public interface Foo 2) int k = 4; 3) 哪三項(xiàng)與第2行等價(jià)? ()A:final int k = 4;B:public int k = 4;C:static int k = 4;D:abstract int k = 4;E:volatile int k = 4;F:protected int k = 4;20. 分析: interface Inter class A implements Inter class B extends A B() A arr = new A10; boolean b1 = t

13、his instanceof Inter; boolean b2 = arr instanceof Object; System.out.println("b1 = " + b1 + ", b2 = " + b2); 創(chuàng)建B的對(duì)象時(shí)會(huì)輸出?()A: 編譯失敗.B: b1 = true, b2 = trueC: b1 = true, b2 = falseD: b1 = false, b2 = trueE: b1 = false, b2 = false21. 哪一個(gè)能通過編譯?()A: new Animal().soundOff();B: Lion l =

14、Alpha1.get("meat eater");C: Elephant e = new Alpha1();D: new Alpha1().get("veggie").soundOff();22. 分析: class Passenger class Engine interface TransportVehicle void loadPassengers(); interface Helicopter extends TransportVehicle int flyIt( String direction ); abstract class JetStr

15、eam implements Helicopter 哪種說法是正確的?()A: TransportVehicle has a Passenger.B: 類Engine在類JetStream中.C: 接口TransportVehicle可以形成多態(tài)的基礎(chǔ).D: 繼承JetStream的非抽象類可以隨意聲明方法loadPassengers().23. 哪三個(gè)是"is a" 關(guān)系? ()A:public class X B:public interface Shape public class Y extends X public interface Rectangle exte

16、nds Shape C:public interface Color D:public class Species public class Shape private Color color; public class Animal private Species species; E:public class Person F:interface Component public class Employee class Container implements Component public Employee(Person person) private Component child

17、ren;24. 運(yùn)行結(jié)果是:() public interface Test int frood = 42; class TestImpl implements Test private static int frood; public static void main(String args) System.out.println(+frood); A: 0B: 1C: 42D: 43E: 編譯失敗.F: 運(yùn)行時(shí)異常.25. 運(yùn)行結(jié)果是?()A: 5B: 10C: 編譯失敗.D: 運(yùn)行時(shí)異常.26. 運(yùn)行結(jié)果是:() 1) public class Test 2) public static

18、 void main(String args) 3) class Foo 4) public int i = 3; 5) 6) Object o = (Object)new Foo(); 7) Foo foo = (Foo)o; 8) System.out.println("i = " + foo.i); 9) 10) A: i = 3C: 第6行拋出ClassCastException異常.B: 編譯失敗.D: 第7行拋出ClassCastException異常.27. 分析: String s = "abcde" Object ob = (Object)s; if (ob.equals(s) System.out.println("AAAA"); else System.out.println("BBBB"); if (s.equals(ob) System.out.println("CCCC"); else System.out.println(&qu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論