练习专区

今天的一小步就是明天的一大步
Problem 1500 军队拥有的武器......Java
Accepted: 7   Total Submit: 27
Time Limit: 1000ms   Memory Limit: 30720KB
Description
仔细阅读下列类图,完成本道问题。 1,定义一个接口Assaultable(可攻击的),该接口有一个抽象方法attack()。 2,定义一个接口Mobile(可移动的),该接口有一个抽象方法move()。 3,定义一个抽象类Weapon,实现Assaultable接口和Mobile接口,但并没有给出具体的实现方法。 4,定义3个类:Tank,Flighter,WarShip都继承自Weapon,分别用不同的方式实现 Weapon 类中的抽象方法。(比如:Tank的attack()输出坦克攻击!!!,move()输出坦克移动!!!) 5,写一个类Army,代表一支军队,这个类有一个属性是Weapon数组w(用来存储该军队所拥有的所有武器);该类还提供一个构造方法,在构造方法里通过传一个int类型的参数来限定该类所能拥有的最大武器数量,并用这一大小来初始化数组w。该类还提供一个方法addWeapon(Weapon wa),表示把参数wa所代表的武器加入到数组w中,并且还应该有一个计数的成员变量。在这个类中还定义两个方法attackAll()和moveAll(),让w数组中的所有武器攻击和移动。
Input
输入多组数据,每组数据包括一个正整数max,表示军队武器库最大拥有的武器数,而后是增加武器到武器库。
Output
对应样例,先输出最多拥有武器数,而后每增加一个武器判断是否能入库,能入库就输出"武器库足够!已增加i个武器";不能入库就输出"警告:武器库已满!!!不能增加武器!!!"。 最后输出 所有武器移动,所有武器战斗。 每组数据之间用空行隔开。
Sample Input
4 坦克 战斗机 战船 战船 战船
Sample Output
您最多拥有4个武器!!!
武器库足够!已增加1个武器
武器库足够!已增加2个武器
武器库足够!已增加3个武器
武器库足够!已增加4个武器
警告:武器库已满!!!不能增加武器!!!

所有武器准备移动!!!
1号坦克移动!!!
2号战斗机移动!!!
3号战船移动!!!
4号战船移动!!!

所有武器准备战斗!!!
1号坦克攻击!!!
2号战斗机攻击!!!
3号战船攻击!!!
4号战船攻击!!!
Hint
提交     返回