資源描述:
《繼承與多態(tài)、抽象類與接口》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、實驗10繼承與多態(tài)、抽象類與接口一.實驗?zāi)康模?)學(xué)習(xí)類的繼承、子類在對象中調(diào)用父類定義的方法(2)學(xué)習(xí)類繼承時方法的覆蓋(3)學(xué)習(xí)java中抽象類的語法、子類中實現(xiàn)父類的抽象方法(4)學(xué)習(xí)java中接口的語法、接口的實現(xiàn)二.實驗軟件環(huán)境jdk1.6.0_18、windows7三.實驗內(nèi)容1寫程序運行結(jié)果:importjava.io.*; classSuperClass{ intx; SuperClass(){ x=5; System.out.println("inSuperCl
2、ass:x="+x); } voiddoSomething(){ System.out.println("inSuperClass.doSomething()"); } } classSubClassextendsSuperClass{ intx; SubClass(){ super(); //調(diào)用父類的構(gòu)造方法 x=5; //super()要放在方法中的第一句 System.out.println("inSubClass:x=
3、"+x); } voiddoSomething(){ super.doSomething();//調(diào)用父類的方法 System.out.println("inSubClass.doSomething()"); System.out.println("super.x="+super.x+"sub.x="+x); } } publicclassInheritance{ publicstaticvoidmain(Stringargs[]){ SubCl
4、asssubC=newSubClass(); subC.doSomething(); } }2、編寫一個java程序,在程序中定義一個Animal類,再定義兩個Animal類的子類Bird、Fish類,在子類中覆蓋父類的play方法//Overriding.javaclassAnimal{voidplay(){System.out.println("我是動物,我會很多本領(lǐng)");}}[代碼1]//定義Animal類的子類Bird,覆蓋Animal類的play方法,在play方法中輸出“我是小鳥,
5、我能飛翔”[代碼2]//定義Animal類的子類Fish,覆蓋Animal類的play方法,在play方法中輸出“我是小魚,我能游泳”classOverriding{publicstaticvoidmain(Stringargs[]){Animals1=newAnimal();Birds2=newBird();Fishs3=newFish();s1.play();s2.play();s3.play();}}3、創(chuàng)建類A1類,實現(xiàn)構(gòu)造方法輸出“thisisA”,創(chuàng)建A1的子類B1,實現(xiàn)構(gòu)造方法中輸出“thisi
6、sB”,創(chuàng)建B1類的子類C1,實現(xiàn)構(gòu)造方法中輸出“thisisC”。編寫測試類Test,創(chuàng)建A1類、B1類、C1類的對象,查看輸出結(jié)果4、編寫一個商品類(屬性:產(chǎn)品編號,產(chǎn)品名稱,產(chǎn)品單價),編寫商品類的子類牛奶類,增加會員屬性,覆蓋父類的計算折扣的方法,要求計算出會員和非會員折扣后各是多少錢。編寫測試類,初始化牛奶價格為3元,會員價為2.6,折扣的百分比為0.8,編寫子類的方法,輸出折扣后的價格5、定義一個抽象類--Shape,該類有求面積getArea和周長getPerimeter兩個抽象方法。該抽象類派
7、生三角形Triangle、矩形Rectangle、圓Circle三個子類,為各個子類實現(xiàn)抽象類的方法,并為這些子類編寫合適的屬性和構(gòu)造方法。編寫程序分別創(chuàng)建三角形、矩形、圓對象,并輸出各個對象的面積和周長。開平方:Math.sqrt(doubleq);3、定義一個接口Drawable,該接口如下:publicinterfaceDrawable{publicvoiddraw();publicbooleanisVisible();}對第一題中的三個派生子類,分別實現(xiàn)Drawable接口,并對創(chuàng)建的對象調(diào)用其實現(xiàn)的
8、接口方法。(對于方法的實現(xiàn)可以盡量簡單,如draw方法可以簡單的打印出:“某某類的draw方法”)7、(選做)某公司雇員(Employee)包括經(jīng)理(Manager)、技術(shù)人員(Technician)和銷售員(Saleman)。以Employee類為基類,派生出manager、technician和saleman類。Employee類的屬性包括姓名、職工號、工資級別、月薪(實發(fā)基本工資加業(yè)績工資);