韩顺平0基础学java——第30天

news2024/11/15 12:05:16

p600-611

坦克大战!

艰难推进中

坦克大战-子弹

发射子弹

1.当发射一颗子弹后,就相当于启动一个线程

2.玩家拥有子弹对象,当按下J时,就启动发射行为(线程),让子弹不停移动,形成射击的过程。

3.面板mypanel需要不停重绘,才能出现这个效果

4.当子弹移动到面板边界时,就销毁子弹线程。

 

增加功能:让敌人发射子弹,且可以有多颗子弹。

1.在敌人坦克类中增加Vector来保存多个子弹

2.当创建敌人坦克时,就初始化一个shot给Vector,同时启动它

3.在绘制敌人坦克时,需要遍历敌人坦克对象的Vector,绘制所有子弹。

4.当子弹的isLive==false的时候,就从Vector中移除子弹。

子弹命中,敌人爆炸,敌人移动

这章有点长脑子。

0603_韩顺平Java_敌方坦克消失_哔哩哔哩_bilibili

让敌人的坦克也可以自由随机的上下左右移动思路分析
1.因为要求敌人的坦克,可以自由移动,因此需要将敌人坦克当做线程使用
2.我们需要Enemy Tank implements Runnable

3.在run方法中写上相应的代码即可!

多发子弹

我方坦克在发射的子弹消亡后,才能发射新的子弹=→>扩展(发多颖子弹怎么办)

1.在按下J键,我们判断当前hero对象的子弹,是否已经销毁
2.如果没有销毁。就不去触发shotEnemy

3.如果已经销毁,才去出发

使用Vector保存我的子弹 

敌人的坦克打到我,我爆炸

尝试失败了,等老韩吧,只能成功实现敌人打中我让我动不了。

。。。


IO流

文件,对我们并不陌生,文件是保存数据的地方,比如大家经常使用的word文档,txt文件.excel文件...都是文件。它既可以保存一张图片,也可以保持视频声音。
6e4c864c7a7c4c4f92669cd4458591e0.png

dc73ed053a0d410ead57bc0c6febf0c4.png

文件类实现了串行化(网络传输!)、可比较

例:

public void cr2(){
    File father_file = new File("D:\\madake");
    String filename = "mdk2.txt";
    File file1 = new File(father_file, filename); //在内存里创造。只是个对象
    try {
        file1.createNewFile();//写入硬盘。
        System.out.println("创建成功2");
    } catch (IOException e) {
        e.printStackTrace();
    }
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1865294.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ubuntu20.04安装python2和python3及版本配置

Ubuntu20.04安装python2和python3及版本配置_ubuntu 20.04 python3-CSDN博客https://blog.csdn.net/pangc2014/article/details/117407413 >>>ubuntu 安装源码python2_mob649e8161c39d的技术博客_51CTO博客https://blog.51cto.com/u_16175489/7327966

让python的报错代码只显示第一层

在 Python 中,sys.tracebacklimit 是 sys 模块中的一个属性,它用于控制在错误发生时,Python 解释器显示的堆栈追踪(traceback)的深度。 具体来说: • 默认行为:当出现未处理的异常时&#xff…

华为OD机试 - 掌握单词个数(Java 2024 D卷 100分)

华为OD机试 2024D卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(D卷C卷A卷B卷)》。 刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测…

Spark运行spark-shell与hive运行时均报错的一种解决方案

环境按照尚硅谷的配置的。 在运行hive的时候,报错代码为30041,无法执行insert语句。 在运行spark-shell的时候,报错,无法进入到shell脚本中。 可能的问题: 对集群设置的域名与集群的主机名称不一致。 例如:…

C#之Delta并联机械手的视觉相机标定与形状匹配

本文导读 上节课程我们讲述了如何建立Delta并联机械手正逆解,本节课程我们主要讲解如何通过C#语言开发正运动Delta并联机械手视觉流水线同步分拣的视觉部分。 VPLC711硬件介绍 VPLC711是正运动推出的一款基于x86平台和Windows操作系统的高性能机器视觉EtherCAT运…

75. UE5 RPG 创建场景摆放部件蓝图

这一篇文章来点简单的内容,相当于我们使用蓝图创建类似于unity的预制体。 创建一个一个柱子蓝图 首先,我们创建一个立柱的蓝图,将我们之前创建的柱子上面含有火焰和灯光的部分合并成一个蓝图,方便往场景内添加。 点击创建一个基…

Docker系列之安全

Docker的安全前言一、Docker 容器与虚拟机的区别 1. 隔离与共享 2. 性能与损耗二、Docker 存在的安全问题 1.Docker 自身漏洞 2.Docker 源码问题三、 Docker 架构缺陷与安全机制 1. 容器之间的局域网攻击 2. DDoS 攻击耗尽资源 3. 有漏…

ACL 2023事件相关(事件抽取、事件关系抽取、事件预测等)论文汇总

ACL 2023事件抽取相关(事件抽取、事件关系抽取、事件预测等)论文汇总,后续会更新全部的论文讲解。 Event Extraction Code4Struct: Code Generation for Few-Shot Event Structure Prediction 数据集:ACE 2005 动机:与自然语言相比&#xf…

利用maven命令往本地仓库添加jar包

一:遇到问题 有些jar包在中央仓库没有,需要手动往本地仓库添加,方便以后打包使用。 比如:添加红框这个依赖,现在爆红 二:解决办法 **第一步:**打开idea,找到运行按钮旁边的框&am…

Android集成高德地图SDK(2)

1.解压下载的压缩包,找到AMap_Android_SDK_All\AMap3DMap_DemoDocs\AMap_Android_API_3DMap_Demo\AMap3DDemo\app\libs,复制libs里的所有文件,将其粘贴到Android工程的libs目录下,如图所示。 2.打开app下的build.gradle&#xff0…

无忧易售升级:一键设置图片分辨率,赋能十大跨境电商平台

在电商领域,产品图片的品质直接影响着顾客的购买决策与品牌形象的塑造。无忧易售ERP特推出图片分辨率修改功能,为电商卖家们提供更专业的图像优化工具,让每一像素都成为吸引客户的秘密武器! 一、Allegro、OZON、Coupang、Cdiscou…

数据分析python基础实战分析

数据分析python基础实战分析 安装python,建议安装Anaconda 【Anaconda下载链接】https://repo.anaconda.com/archive/ 记得勾选上这个框框 安装完后,然后把这两个框框给取消掉再点完成 在电脑搜索框输入"Jupyter",牛马启动&am…

低代码:释放企业创新力的钥匙

近年来,随着信息技术的不断发展,企业对于快速开发应用程序的需求越来越迫切。然而,传统的软件开发过程常常耗时费力,限制了企业的创新潜力。于是,低代码应运而生,成为解决开发难题的一把利器。 低代码开发…

完整代码Python爬取豆瓣电影详情数据

完整代码Python爬取豆瓣电影详情数据 引言 在数据科学和网络爬虫的世界里,豆瓣电影是一个丰富的数据源。在本文中,我们将探讨如何使用Python语言,结合requests和pyquery库来爬取豆瓣电影的详情页面数据。我们将通过一个具体的电影详情页面作…

节流工具,避免操作太频繁

ThrottleUtil 用于保证某个操作在一定时间内只执行一次的工具。 package com.cashpro.kash.lending.loan.utils;/*** <pre>* Created by zhuguohui* Date: 2024/6/26* Time: 13:43* Desc:用于节流执行任务,限制任务执行的频次* </pre>*/import android.os.Handle…

给前端小白的11个建议(少走弯路)

作为一个编程4年的的前端工程师&#xff0c;一路走来踩过许多坑。希望我的经验能让你少踩些坑&#xff0c;在编程的路上走的更顺些&#xff01; 1. 禁用var声明 只使用const或let声明变量。并且首选const&#xff0c;当一个变量需要重新赋值时&#xff0c;才使用let。并且在创…

旧衣回收小程序开发:回收市场的新机遇

当下&#xff0c;旧衣服回收已经成为了一种流行趋势&#xff0c;居民都将闲置的衣物进行回收&#xff0c;旧衣回收市场规模在不断增加。随着市场规模的扩大&#xff0c;为了让居民更加便利地进行回收&#xff0c;线上回收小程序也应运而生&#xff0c;为大众打造了一个线上回收…

windows安装Nacos并使用

Nacos&#xff08;前身为阿里巴巴的Nacos Config和Nacos Discovery&#xff09;是一个开源的动态服务发现、配置和服务管理平台&#xff0c;由阿里巴巴开发并维护。它提供了一种简单且易于使用的方式来管理微服务架构中的服务注册、发现和配置管理。 主要功能包括&#xff1a;…

[leetcode]move-zeroes 移动零

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:void moveZeroes(vector<int>& nums) {int n nums.size(), left 0, right 0;while (right < n) {if (nums[right]) {swap(nums[left], nums[right]);left;}right;}} };

web渗透-SSRF漏洞及discuz论坛网站测试

一、简介 ssrf(server-side request forgery:服务器端请求伪造&#xff09;是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下&#xff0c;ssrf是要目标网站的内部系统。(因为他是从内部系统访问的&#xff0c;所有可以通过它攻击外网无法访问的内部系统&…