7.线程的应用037.4坦克大战5.0版增加功能:我方坦克在发射的子弹消亡之后,才能发射新的子弹==>拓展:发射多颗子弹怎么办,控制一次最多只能发射5颗子弹让敌人坦克发射的子弹消亡之后,可以再发射子弹当敌人的坦克击中我方坦克之后,我方坦克消失,并出现爆炸效果7.4.1功能1plus:我方坦克连发子弹思路:要发射多颗子弹,就使用Vector保存子弹对象在绘制我方子弹的时候需要遍历Vector集合同时要修改击中判定方法hitTank修改处1:Hero类:packageli.TankGame.version05;importjava.util.Vector;/***@author李*@version
JavaGUI-坦克大战047.线程的应用037.3坦克大战4.0版7.3.4功能3:敌方坦克自由移动功能3:让敌人的坦克也可以自由随机地上下左右移动思路:因为要求敌人的坦克自由移动,因此需要将敌人坦克当做线程使用,EnemyTank类实现Runnable接口线程的run方法的具体操作为:根据当前的方向继续移动敌坦,然后改变敌坦移动方向,再继续移动,如此不断循环。break的条件是当前的敌人坦克被击中,即enemy.isLive==false。在MyPanel类中,每创建一个敌人坦克对象就启动一个线程。EnemyTank:packageli.TankGame.version04;importj
JavaGUI-坦克大战047.线程的应用037.3坦克大战4.0版7.3.4功能3:敌方坦克自由移动功能3:让敌人的坦克也可以自由随机地上下左右移动思路:因为要求敌人的坦克自由移动,因此需要将敌人坦克当做线程使用,EnemyTank类实现Runnable接口线程的run方法的具体操作为:根据当前的方向继续移动敌坦,然后改变敌坦移动方向,再继续移动,如此不断循环。break的条件是当前的敌人坦克被击中,即enemy.isLive==false。在MyPanel类中,每创建一个敌人坦克对象就启动一个线程。EnemyTank:packageli.TankGame.version04;importj
HTTP&Tomcat&Servlet1、JavaWeb概念Web:全球局域网,也称万维网(www),能够通过浏览器访问的网站JavaWeb:是用Java相关的技术来做网站2、JavaWeb技术栈B/S架构Browser/Server,浏览器/服务器架构模式。它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端。浏览器只需要请求服务器,获取Web子u按,服务器把Web资源发送给浏览器即可好处易于维护升级:服务端升级后,客户端无需任何部署就可以使用到新的版本静态资源HTML、CSS、JavaScript、图片等。负责页面展现,资源是一成不变的。动态资源Servlet、JSP等。负
HTTP&Tomcat&Servlet1、JavaWeb概念Web:全球局域网,也称万维网(www),能够通过浏览器访问的网站JavaWeb:是用Java相关的技术来做网站2、JavaWeb技术栈B/S架构Browser/Server,浏览器/服务器架构模式。它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端。浏览器只需要请求服务器,获取Web子u按,服务器把Web资源发送给浏览器即可好处易于维护升级:服务端升级后,客户端无需任何部署就可以使用到新的版本静态资源HTML、CSS、JavaScript、图片等。负责页面展现,资源是一成不变的。动态资源Servlet、JSP等。负
三、项目部署之前我们讲解Linux操作系统时,就提到,我们服务端开发工程师学习Linux系统的目的就是将来我们开发的项目绝大部分情况下都需要部署在Linux系统中。那么在本章节,我们将通过两种方式,来演示项目部署,分别是:手动部署项目和基于shell脚本自动部署。3.1、手动部署项目3.1.1、在IDEA中开发SpringBoot项目并打包成jar包创建一个简单的项目,结构如下所示项目运行结果执行package指令,进行打包操作,将当前的SpringBoot项目,打包成jar包操作步骤Step1helloworldorg.springframework.bootspring-boot-mave
三、项目部署之前我们讲解Linux操作系统时,就提到,我们服务端开发工程师学习Linux系统的目的就是将来我们开发的项目绝大部分情况下都需要部署在Linux系统中。那么在本章节,我们将通过两种方式,来演示项目部署,分别是:手动部署项目和基于shell脚本自动部署。3.1、手动部署项目3.1.1、在IDEA中开发SpringBoot项目并打包成jar包创建一个简单的项目,结构如下所示项目运行结果执行package指令,进行打包操作,将当前的SpringBoot项目,打包成jar包操作步骤Step1helloworldorg.springframework.bootspring-boot-mave
数组学习目标:1.jvm内存图入门2.一维数组的使用3.二维数组的使用4.数组的内存结构5.数组中常见算法6.数组中常见的异常一、JVM内存图入门java程序运行在jvm上,jvm内存主要分为五块,结构如下:每块内存负责的职责如下:Java虚拟机栈(JavaVirtualMachineStacks):描述的是Java方法执行的内存模型:每个方法在执行的同时都会创建一个栈帧(StackFrame),栈帧中存储着局部变量表、操作数栈、动态链接、方法出口等信息。每一个方法从调用直至执行完成的过程,会对应一个栈帧在虚拟机栈中入栈到出栈的过程。与程序计数器一样,Java虚拟机栈也是线程私有的。局部变量和
数组学习目标:1.jvm内存图入门2.一维数组的使用3.二维数组的使用4.数组的内存结构5.数组中常见算法6.数组中常见的异常一、JVM内存图入门java程序运行在jvm上,jvm内存主要分为五块,结构如下:每块内存负责的职责如下:Java虚拟机栈(JavaVirtualMachineStacks):描述的是Java方法执行的内存模型:每个方法在执行的同时都会创建一个栈帧(StackFrame),栈帧中存储着局部变量表、操作数栈、动态链接、方法出口等信息。每一个方法从调用直至执行完成的过程,会对应一个栈帧在虚拟机栈中入栈到出栈的过程。与程序计数器一样,Java虚拟机栈也是线程私有的。局部变量和
一、软硬件配置介绍操作系统:Windows10和Ubuntu20.04均适用GPU:NvidiaGeforceRTX3060Python:3.8Tensorflow:2.5.0二、环境配置步骤1、安装显卡驱动(1)Windows10 在Nvidia驱动下载官网下载522.25版本的驱动并安装。(2)Ubuntu20.04 打开系统设置,找到软件更新里的附加驱动,选择470版本的驱动即可。注意,安装完成后需要重启一次。 安装完成后使用nvidia-smi命令进行验证。2、安装并配置Conda(1)安装conda 此处选择miniconda。访问miniconda官网下载对