清华毕业大佬用一个坦克大战项目,轻松带你玩转Java23种设计模式(奥利给)
先给大家讲述一下坦克大战是怎么进行运行的。 坦克大战第一节: new 出一个窗口; 设定标题栏内容; TankFrame从Frame继承+显示; 认识paint方法,重写; 坦克大战第二节 学习graphics类,画图; 学习repaint方法; 实现MyKeyListener,对键盘作出响应; MyKeyListener从KeyAdapter继承; 坦克大战第三节 取得具体按键信息; 根据具体按键调整坦克位置,持有对方引用; 抽象出坦克类,学习使用枚举类型; 坦克大战第四节 把监听处理类MyKeyListener放到TankFrame内; 用匿名内部类处理窗口关闭; 根据按键状态,改变坦克方向; 坦克大战第五节 根据坦克方向移动位置; 能停,能动; test包,关于classloader的知识; 06坦克大战第六节 将坦克换成图片版; 画出一颗子弹,让子弹飞一会儿; 按下ctrl键,主战坦克打出一发炮弹; 07坦克大战第七节 打出多发子弹; 子弹从坦克中心位置打出; 子弹消亡(飞出游戏区); 08坦克大战第八节 定义rectangle属性,不用每次都new; 炮弹new出来自动加入容器,死掉后自动去除; 分离玩家和机器人,对边界进行不同的处理; 09坦克大战第九节 用双缓冲消除闪烁; 加一堆敌人坦克; 做碰撞检测; 10坦克大战第十节 显示爆炸; 加入声音; 让敌人坦克更加智能;