坦克大战-部分

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

消灭所有敌人可以过关

23个类,3个gif图片

wsad控制移动

j射击

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

8个关卡

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

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

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

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

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

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

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

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

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

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

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

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

相关推荐
_Evan_Yao13 小时前
Redis 缓存穿透、击穿、雪崩,一次讲清!
java·spring·mybatis
梓豪csd14 小时前
消息订阅中心:谁该收到哪条通知
java·开发语言·人工智能·低代码·自动化·1024程序员节
秋饼14 小时前
Spring AI 2.1 Message Parts 深度实战:推理签名回放与跨轮记忆持久化的源码级落地
java·ai·技术分享·后端开发
thefool11226615 小时前
TCP 1
java·1024程序员节
金銀銅鐵17 小时前
[Java] 用 GUI 展示 EnumSet 增减元素时的内部变化(下)
java·后端·ai编程
AI人工智能+电脑小能手17 小时前
一次请求打几个下游,这个Java并行任务工具类6个方法按序聚合
java·线程池·并发编程·1024程序员节·批量处理·并行任务
paopaokaka_luck19 小时前
心理咨询管理系统(WebSocket实时沟通、基于用户的协同过滤、 ECharts多维分析、 预约业务流程、预约校验与定时处理)
java·vue.js·spring boot·mysql·spring·echarts·1024程序员节
2301_322414280419 小时前
springboot农产品交易平台的设计与实现08055-计算机毕设 原创(免费领源码+部署教程+开发环境)
java·spring boot·redis·mysql·tomcat·maven·mybatis
考虑考虑20 小时前
JDK26的JEP 500属性
java·后端·java ee
LMT流氓兔20 小时前
第五单元——第十二课:把脚本整理成项目
java·数据库·python·langchain·1024程序员节