内容:
定义一个抽象类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