1,定义一个接口Assaultable(可攻击的),该接口有一个抽象方法attack()。
2,定义一个接口Mobile(可移动的),该接口有一个抽象方法move()。
3,定义一个抽象类Weapon,实现Assaultable接口和Mobile接口,但并没有给出具体的
实现方法。
4,定义3个类:Tank,Flighter,WarShip都继承自Weapon,分别用不同的方式实现 Weapon 类
中的抽象方法。
5,写一个类Army,代表一支军队,这个类有一个属性是Weapon数组w(用来存储该军队所
拥有的所有武器);该类还提供一个构造方法,在构造方法里通过传一个int类型的参数来
限定该类所能拥有的最大武器数量,并用这一大小来初始化数组w。该类还提供一个方法
addWeapon(Weapon wa),表示把参数wa所代表的武器加入到数组w中。在这个类中还定义
两个方法attackAll()和moveAll(),让w数组中 的所有武器攻击和移 动。
6,写一个主方法去测试以上程序。
interface Assaultable{//可攻击的
void attack();
}
interface Mobile{//可移动的
void move();
}
abstract class Weapon implements Assaultable,Mobile {
}
class Tank extends Weapon{
}
class Flighter extends Weapon{
public void attack(){ System.out.println("战斗机攻击!!!"); } public void move(){ public void attack(){ System.out.println("坦克攻击!!!"); } public void move(){ System.out.println("坦克移动!!!"); } public void attack(){} public void move(){}