Java-接口與類之間繼承例題3頁_第1頁
Java-接口與類之間繼承例題3頁_第2頁
Java-接口與類之間繼承例題3頁_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、1,定義一個接口Assaultable(可攻擊的),該接口有一個抽象方法attack()。2,定義一個接口Mobile(可移動的),該接口有一個抽象方法move()。3,定義一個抽象類Weapon,實現(xiàn)Assaultable接口和Mobile接口,但并沒有給出具體的實現(xiàn)方法。4,定義3個類:Tank,Flighter,WarShip都繼承自Weapon,分別用不同的方式實現(xiàn) Weapon 類中的抽象方法。5,寫一個類Army,代表一支軍隊,這個類有一個屬性是Weapon數(shù)組w(用來存儲該軍隊所擁有的所有武器);該類還提供一個構(gòu)造方法,在構(gòu)造方法里通過傳一個int類型的參數(shù)來限定該類所能擁有的最

2、大武器數(shù)量,并用這一大小來初始化數(shù)組w。該類還提供一個方法addWeapon(Weapon wa),表示把參數(shù)wa所代表的武器加入到數(shù)組w中。在這個類中還定義兩個方法attackAll()和moveAll(),讓w數(shù)組中 的所有武器攻擊和移 動。6,寫一個主方法去測試以上程序。interface Assaultable/可攻擊的 void attack();interface Mobile/可移動的 void move();abstract class Weapon implements Assaultable,Mobile public void attack()public void mo

3、ve()class Tank extends Weaponpublic void attack()System.out.println(坦克攻擊!);public void move()System.out.println(坦克移動!);class Flighter extends Weaponpublic void attack()System.out.println(戰(zhàn)斗機攻擊!);public void move()System.out.println(戰(zhàn)斗機移動!);class Warship extends Weaponpublic void attack()System.out.p

4、rintln(戰(zhàn)船攻擊!);public void move()System.out.println(戰(zhàn)船移動!);class ArmyWeapon w; int max; int j=0; public int getMax() return max;public void setMax(int max) this.max = max;public Army(int max)w= new Weaponmax;this.max=max;System.out.println(您最多擁有+max+個武器!) ;public void addWeapon(Weapon wa)if(jgetMax()

5、System.out.println(武器庫足夠!+已增加+(j+1)+個武器);wj=wa;j+;elseSystem.out.println(警告:武器庫已滿!不能增加武器!);public void attackAll()System.out.println();System.out.println(所有武器準(zhǔn)備戰(zhàn)斗!);for(int i=0;iw.length;i+)System.out.print(i+1)+號);wi.attack();public void moveAll()System.out.println();System.out.println(所有武器準(zhǔn)備移動!);for(int i=0;iw.length;i+)System.out.print(i+1)+號);wi.move();public class Test1 public static void main(String args)Army a = new Army(4);a.addWeapon(new Tank();a.addWeapon(new Flighter();a.addWeapon(new

溫馨提示

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

評論

0/150

提交評論