面向对象编程项目~飞机大战
第一天
1.编写六个游戏中的类包括属性,构造,输出信息方法并在World类中运行测试
第二天
1.在World类中main方法调用start方法定义六个类的属性在start类中为数组赋值并遍历输出
第三天
1.编写父类FlyingObject父类中编写属性,构造方法等
2.六个子类继承父类并删除冗余代码并编写构造,调用父类构造
第四天
1.父类属性修改为保护类型子类中属性修改为私有类型
2.编写代码制作飞机大战的窗体并设置响应属性
3.FlyingObject类中编写一个readImage的方法,功能是将电脑上的图片读取到java内存中
第五天
1.六个子类分别编写私有静态的属性保存自己需要到的图片,每个类的静态块中使用readImage将需要的图片读取加载
2.World类中定义宽和高的常量
3.FlyingObject类中编写3个状态常量,编写一个保存状态的变量,编写判断状态的三个方法,设置为抽象类,编写抽象方法getImage
4.编写六个子类的重写方法,都重写getImage方法
5.在FlyingObject类中编写绘制图片的方法
6.在World类中编写paint方法绘制各个对象
7.Sky类重写绘制方法画2个天空
第六天
1.FlyingObject类中编写一个移动方法step()
2.六个子类中重写父类的step方法
3.在World类中的start方法中编写计时器
4.编写飞行物移动的moveAction方法并在计时器中调用
5.编写设计敌机进场
6.编写设计子弹进场
第七天
1.编写两个接口加分接口Score奖励接口Award
2.小敌机和大敌机实现Score接口奖励机实现Award接口
3.处理出界的子弹和敌机,在父类中编写的向下出界的检测,在子弹类中重写了向上出界的检测,在World类中编写checkOutAction控制出界的敌机和子弹移出数组
4.英雄机移动Hero类中编写移动方法,World类中监听鼠标的操作并调用移动方法
第八天
1.为发生碰撞编写一个前置的准备方法英雄机:加命,加火力,获得命,飞行物:修改状态为DEAD的方法,判断当前飞行物是否和其他飞行物相撞的方法
2.编写子弹击中敌机的方法遍历子弹遍历敌机判断碰撞加分或者获得奖励
3.编写英雄机和敌机碰撞的方法,遍历敌机判断英雄机和敌机的碰撞,如果碰撞减命,清空火力值
4.World类中编写游戏状态的常量,声明并在静态块中加载游戏图片
第九天
1.修改鼠标移动操作只有在运行状态,才会跟鼠标移动。
添加鼠标点击操作,开始切换成运行,结果切换到开始
添加鼠标移出操作,运行切换到暂停
添加鼠标移入操作,暂停切换到运行
2.添加一个判断游戏结束的方法,如果英雄机生命值<=0切换到结束
3.计时器中,除repaint方法,所有方法都只在运行状态下执行
4.repaint方法中,绘制状态的对应图片