JAVA中implements实现多接口
这里有一个游戏,人猿泰山。 主角是一个单独的类,这里我们主要用怪物说明接口的用法: 怪物有很多种, 按地域分:有的在天上飞,有的在地上跑,有的在水里游 按攻击方式分:有的能近距离物理攻击,有的能远距离射击
假设游戏里需要这样的几种怪——
野狗:地上移动,近距离攻击
黑熊:地上移动,近/远距离攻击
秃鹫:地上/天上移动,远距离攻击
食人鱼:水中移动,近距离攻击
鳄鱼:地上/水中移动,近距离攻击
显然,如果我们将每一种怪物定义为一个类,那就不是面向对象的程序开发了,我们应当使用接口:
interface OnEarth{//陆地接口
int earthSpeed;//陆地移动速度
void earthMove();//陆地移动方法
}
interface OnWater{//水中接口
int waterSpeed;//水中移动速度
void waterMove();//水中移动方法
}
interface OnAir{//空中接口
int airSpeed;//水中移动速度
void airMove();//水中移动方法
}
interface NearAttack{//近距离攻击接口
int nearAttackPower;//近距离攻击力
void nearAttack();//近距离攻击方法
}