坦克大战-部分

通过键盘操控坦克移动,转弯,射击

消灭所有敌人可以过关

23个类,3个gif图片

wsad控制移动

j射击

砖墙限制移动,可以打穿;铁墙,限制移动,不能打穿;水,限制移动,炮弹穿过

8个关卡

下方数字表示坦克数量,打死一个少一个,减为0可以进入下一关

用户坦克生命值,减为0,游戏结束

每个关卡结束有分数统计-》可以用io保存到文件/数据库编程保存到数据库中

Java事件处理机制:委派处理模型。事件的发生地方与事件的处理地方不同 (信息传递)-》依靠java.awt.event库中的监听器

坦克移动 用keyListener键盘监听器 画纸实现,画板添加

坦克转向给tank类加一个属性direct

封装画坦克的方法,判断direct,

【注意】:KeyListener不能单独使用,必须使用组件(JFrame)当作中间媒介(就好比监视器要装在房屋上一样)

封装思想:操作什么,方法就写在什么里面,然后给public方法,可能在其他地方调用

多个坦克一起动,-》线程的知识

每个人机的坦克是一个线程,每颗子弹也是一个线程

射击方法是不是应该直接NEW一个子弹啊,不然会覆盖上一个子弹

相关推荐
F-2H1 小时前
C语言:指针4(常量指针和指针常量及动态内存分配)
java·linux·c语言·开发语言·前端·c++
苹果酱05671 小时前
「Mysql优化大师一」mysql服务性能剖析工具
java·vue.js·spring boot·mysql·课程设计
_oP_i2 小时前
Pinpoint 是一个开源的分布式追踪系统
java·分布式·开源
mmsx3 小时前
android sqlite 数据库简单封装示例(java)
android·java·数据库
武子康3 小时前
大数据-258 离线数仓 - Griffin架构 配置安装 Livy 架构设计 解压配置 Hadoop Hive
java·大数据·数据仓库·hive·hadoop·架构
豪宇刘4 小时前
MyBatis的面试题以及详细解答二
java·servlet·tomcat
秋恬意4 小时前
Mybatis能执行一对一、一对多的关联查询吗?都有哪些实现方式,以及它们之间的区别
java·数据库·mybatis
FF在路上5 小时前
Knife4j调试实体类传参扁平化模式修改:default-flat-param-object: true
java·开发语言
真的很上进5 小时前
如何借助 Babel+TS+ESLint 构建现代 JS 工程环境?
java·前端·javascript·css·react.js·vue·html
众拾达人5 小时前
Android自动化测试实战 Java篇 主流工具 框架 脚本
android·java·开发语言