抽象类与多态-愤怒的小鸟游戏

内容:
定义一个抽象类AngryBirds,具有两个抽象方法spawn(孵小鸟)和shoot(击中小猪)。
AngryBirds派生出三个子类:BlueBird、RedBird和WhiteBird。
每个子类都拥有一个私有的成员变量max(孵出小鸟/击中小猪的最大数量),其中:BlueBird能孵出小鸟/击中小猪的最大数量为3,RedBird为5,WhiteBird为4。
每个子类实现spawn和shoot方法如下:
public void spawn() {
// 产生一个1~max的随机数
// 输出“xBird孵出了x只小鸟”
}
public void shoot() {
// 产生一个0~max的随机数
// 输出“xBird击中了x只小猪”
}
定义一个测试类HitPigGame,在测试类中完成如下功能:
定义一个hitPig方法,利用多态实现AgryBirds的spawn和shoot方法。
定义一个拥有3个数组元素的AgryBirds数组,3个数组元素分别是BlueBird、RedBird和WhiteBird的对象实例。
调用hitPig方法,依次实现三种鸟儿的spawn和shoot方法。
程序执行示例如下:
在这里插入图片描述

public abstract class AngryBirds {
   
    public abstract void spawn();
    public abstract void shoot();
}
public class BlueBird extends AngryBirds{
   
    Random rand=new Random();
    private int max=3;        // 孵出小鸟/击中小猪的最大数量
    public void spawn() {
           // 孵出1~max只小鸟
        int
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值