多态的调用
定义父类Role,定义属性name,两个子类Soldier和Magicer
定义父类武器Weapon,定义属性name,方法attack()攻击
三个子类Sword,Knife,Mace(狼牙棒),
其中Sword的attack伤害值为100
Knife的attack伤害值为200
Mace的attack伤害值为300
其中战士Solder和法师Magicer可以使用任意一种武器
从控制台输入指令
1>输入A,创建soldier
2>输入B,创建magicer
3>输入1,创建Sword
4>输入2,创建Knife
5>输入3,创建Mace
当战士和法师满5个时,而且每个角色配备自己选择的武器,
组队去攻击,求攻击总值
先定义战士和法士的父类
/*** 定义战士和法师公同父类 **/
public class Role {
/*** 名字 **/
String name;
public Role(String name) {
this.name = name;
}
}
定义战士子类继承父类Role
public class Soldier extends Role {
/***战士攻击的方法。返回本次的伤害值*/
public Soldier() {
super("战士");
}
}
定义魔法师子类,继承父类Role
public class Magicer extends Role {
public Magicer() {
super("法师");
}
}
定义武器父类
public class Weapon {
String name;
public Weapon(String name) {
this.name = name;
}
public int attack() {
//武器攻击力
return 0;
}
}
分别定义武器的三个子类,并继承父类的属性`
/**剑**/
public class Sword extends Weapon {
public Sword() {
//返回其武器的名字
super(