java基础小项目练习之1----3天做出飞机大战
Shoot射击游戏第一天
一. 关键问题(理论):
1. 简述FlyingObject、Enemy、Award、Airplane、Bee、Bullet、Hero之间的继承与实现关系
2. 简述Hero类构造方法中需对哪些数据进行初始化
3. 简述ShootGame类中static块的作用
二. 关键代码(操作):
1. 作业(课下完成):
1) 创建类FlyingObject、Airplane、Bee、Bullet、Hero,并设置属性 (25)
创建接口Enemy、Award,并设置方法
创建类ShootGame
2) 创建Airplane、Bee、Bullet、Hero类的构造方法,进行数据的初始化 (30)
3) 绘制界面,显示一个英雄机,一个敌机,一个小蜜蜂,一个子弹 (20)
Shoot射击游戏第二天
一. 关键问题(理论):
1. 简述随机生成敌人(敌机+小蜜蜂)的实现算法
2. 简述英雄机发射子弹的实现算法
3. 简述子弹打敌人(敌机+小蜜蜂)的实现算法
二. 关键代码(操作):
1. 作业(课下完成):
1) 实现敌人(敌机+小蜜蜂)入场 (40)
实现飞行物(敌机、小蜜蜂、子弹、英雄机)走一步
2) 实现子弹入场 (30)
实现英雄机随着鼠标移动
3) 实现子弹打敌人(敌机+小蜜蜂) (30)
Shoot射击游戏第三天
一. 关键问题(理论):
1. 简述删除越界子弹的实现算法
2. 简述英雄机与敌人(敌机+小蜜蜂)碰撞的实现算法
3. 简述鼠标点击面板后的操作算法实现
二. 关键代码(操作):
1. 作业(课下完成):
1) 实现画分和画命 (30)
实现删除越界的敌人(敌机+小蜜蜂)和子弹
2) 判断英雄机是否与敌人(敌机+小蜜蜂)碰撞 (30)
实现游戏结束判断
3) 画状态 (30)
实现游戏的4种状态处理(启动、运行、暂停、游戏结束)
最新文章
- No module named migrate.versioning
- 你知道哪些linux命令,能把文件上传到远程linux服务器
- WPF EventSetter Handler Command
- Fragment官方解析
- JavaWeb chapter 1 http协议
- 【BZOJ】【3172】【TJOI2013】单词
- Fedora下载地址
- Android使用pull解析xml
- Java 强引用 软引用 弱引用 虚引用详解
- V8引擎的垃圾回收策略
- 『高性能模型』轻量级网络ShuffleNet_v1及v2
- Python之路【第二篇】计算机组成
- idHTTP 向网站发送json格式数据
- codeblocks 输入、输出文件的位置
- 文档对象模型DOM
- 微信小程序开发小技巧——单击事件传参、动态修改样式、轮播样式修改等
- 《Inside C#》笔记(一) .NET平台
- AgileRepository - 一个基于接口的Repository快速开发库
- nl命令(转)
- Linux 系统使用 iso 镜像文件或光盘配置本地YUM 源的最简单方式
热门文章
- Sencha touch 2 入门 -------- DataView 显示服务器端JSON文件数据
- MacRuby 0.3发布,支持Interface Builder,和创建GUI用的HotCocoa
- ruby 2.x.x之新特性散谈
- LeetCode - 验证二叉搜索树
- $(";li";)是对象类型不是数组类型
- poi excel 常用操作
- 电商网站开发记录(三) Spring的引入,以及配置详解
- 基于 HTML5 Canvas 的工控机柜 U 位动态管理
- iview源码解析(1)
- 神奇的ASCⅡ码图