坦克大战-部分

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

消灭所有敌人可以过关

23个类,3个gif图片

wsad控制移动

j射击

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

8个关卡

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

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

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

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

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

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

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

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

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

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

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

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

相关推荐
drebander1 分钟前
使用 Java Stream 优雅实现List 转化为Map<key,Map<key,value>>
java·python·list
乌啼霜满天2494 分钟前
Spring 与 Spring MVC 与 Spring Boot三者之间的区别与联系
java·spring boot·spring·mvc
tangliang_cn10 分钟前
java入门 自定义springboot starter
java·开发语言·spring boot
程序猿阿伟10 分钟前
《智能指针频繁创建销毁:程序性能的“隐形杀手”》
java·开发语言·前端
Grey_fantasy20 分钟前
高级编程之结构化代码
java·spring boot·spring cloud
弗锐土豆27 分钟前
工业生产安全-安全帽第二篇-用java语言看看opencv实现的目标检测使用过程
java·opencv·安全·检测·面部
Elaine20239128 分钟前
零碎04 MybatisPlus自定义模版生成代码
java·spring·mybatis
小小大侠客1 小时前
IText创建加盖公章的pdf文件并生成压缩文件
java·pdf·itext
一二小选手1 小时前
【MyBatis】全局配置文件—mybatis.xml 创建xml模板
xml·java·mybatis
码老白1 小时前
【老白学 Java】Warshipv2.0(二)
java·网络