设计简单的勇者游戏角色
在一款勇者冒险的游戏中,主角团的每个角色会有不同的职业King,Queen, Knight, Troll
……,而且每个角色都可以战斗,但是每个人的相貌不一样
那么如果我们想设计这样的游戏角色,可以设置一个抽象超类Character
超类Character
中有个方法:每个职业都会的行为fight()
另一个是方法:display()
,由于每个职业的外貌不同,所以设置为抽象类,由不同职业自己实现自己的外貌
abstract class Character{
// 长相
abstract public void display();
// 战斗方式
public void fight() {
System.out.println("Hit"); // 打击
};
}
之后的每个职业都继承这个Character
类,同时实现自己的长相display()
这样各自的外貌(display()
)有区别,又因为每个职业继承了父类,每个职业都会战斗(fight()
),
class King extends Character{
@Override
public void display() {
System.out.println("I wearing a crown"); //国王带着皇冠
}
}
class Knight extends Character{
……//其他职业省略
到此为止我们就设计了一套简单的勇者游戏角色
战斗方式发生变化
当当当当!游戏更新了,出现一种船新职业——Minstrel
(吟游诗人)
就像其他职业一样,我们把她继承Character
……实现自己的外貌……会战斗……等等!
本次更新的Minstrel
不会战斗啊!她的作用是给队友加Buff
class Minstrel extends Character{
@Override
public void display() {
System.out.println(