坦克大战-部分

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

消灭所有敌人可以过关

23个类,3个gif图片

wsad控制移动

j射击

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

8个关卡

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

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

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

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

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

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

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

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

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

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

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

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

相关推荐
wuminyu2 小时前
专家视角看Java字节码加载与存储指令机制
java·linux·c语言·jvm·c++
callJJ4 小时前
Spring Data Redis 两种编程模型详解:同步 vs 响应式
java·spring boot·redis·python·spring
wbs_scy4 小时前
Linux线程同步与互斥(三):线程同步深度解析之POSIX 信号量与环形队列生产者消费者模型,从原理到源码彻底吃透
java·开发语言
jinanwuhuaguo6 小时前
(第三十三篇)五月的文明奠基:OpenClaw 2026.5.2版本的文明级解读
android·java·开发语言·人工智能·github·拓扑学·openclaw
xmjd msup7 小时前
spring security 超详细使用教程(接入springboot、前后端分离)
java·spring boot·spring
952367 小时前
SpringBoot统一功能处理
java·spring boot·后端
Lyyaoo.7 小时前
优惠券秒杀业务分析
java·开发语言
消失的旧时光-19437 小时前
统一并发模型:线程、Reactor、协程本质是一件事(从线程到协程 · 第6篇·终章)
java·python·算法
勿忘初心12217 小时前
Java 国密 SM4 加密工具类实战(Hutool + BouncyCastle)|企业级数据加密 + 兼容 JDK8
java·数据安全·数据加密·后端开发·企业级开发·国密 sm4
庞轩px7 小时前
第8篇:原子类与CAS底层原理——无锁并发的实现
java·cas·乐观锁·aba·无锁编程·自旋