Java坦克大战068.IO流应用01坦克大战6.0版增加功能:防止敌人坦克重叠运动记录玩家的成绩(累计击毁坦克数),存盘退出记录当时的敌人坦克坐标,存盘退出玩游戏时,可以选择是开新游戏还是继续上局游戏8.1防止敌人坦克重叠运动8.1.1思路分析按照目标坦克的向右下左四种情况分析,每一种情况又分为两种小情况,一种八种情况。8.1.2代码实现8.1.2.1修改处1在EnemyTank类中:增加了增加一个成员属性,EnemyTank可以得到敌人坦克成员的Vector,用于循环比较是否重叠新增一个方法setEnemyTanks,可以将MyPanel的成员VectorenemyTanks=newVec
Spring基本介绍1.官方资料和下载1.1Spring5下载直接访问https://repo.spring.io/ui/native/release/org/springframework/spring/,选择相应版本即可进入官网https://spring.io/进入Spring5进入Spring5的github也可以直接访问https://github.com/spring-projects/spring-framework在github仓库README.md文件往下拉,看到AccesstoBinaries,点击里面的链接在新页面往下拉,看到如下标题,点击链接点击Artifacts在左边
Spring基本介绍1.官方资料和下载1.1Spring5下载直接访问https://repo.spring.io/ui/native/release/org/springframework/spring/,选择相应版本即可进入官网https://spring.io/进入Spring5进入Spring5的github也可以直接访问https://github.com/spring-projects/spring-framework在github仓库README.md文件往下拉,看到AccesstoBinaries,点击里面的链接在新页面往下拉,看到如下标题,点击链接点击Artifacts在左边
Spring基本介绍025.简单模拟Spring基于XML配置的程序5.1需求说明自己写一个简单的Spring容器,通过读取beans.xml,获取第一个Javabean:Monster的对象,给该对象属性赋值,放入到容器中,并输出该对象信息也就是说,不使用spring原生框架,我们自己简单模拟实现,目的是了解Spring容器的简单机制5.2思路分析5.3代码实现引入dom4j.jar包MyApplicationContext.java:packagecom.li.myapplicationcontext;importcom.li.bean.Monster;importorg.dom4j.Do
Spring基本介绍025.简单模拟Spring基于XML配置的程序5.1需求说明自己写一个简单的Spring容器,通过读取beans.xml,获取第一个Javabean:Monster的对象,给该对象属性赋值,放入到容器中,并输出该对象信息也就是说,不使用spring原生框架,我们自己简单模拟实现,目的是了解Spring容器的简单机制5.2思路分析5.3代码实现引入dom4j.jar包MyApplicationContext.java:packagecom.li.myapplicationcontext;importcom.li.bean.Monster;importorg.dom4j.Do
线程基础036.用户线程和守护线程用户线程:也叫工作线程,当线程的任务执行完或者通知方法结束。平时用到的普通线程均是用户线程,当在Java程序中创建一个线程,它就被称为用户线程守护线程(Daemon):一般是为工作线程服务的,当所有的用户线程结束,守护线程自动结束常见的守护线程:垃圾回收机制例子1:如何将一个线程设置成守护线程packageli.thread.method;publicclassThreadMethodExercise{publicstaticvoidmain(String[]args)throwsInterruptedException{MyDaemonThreadmyDae
线程基础036.用户线程和守护线程用户线程:也叫工作线程,当线程的任务执行完或者通知方法结束。平时用到的普通线程均是用户线程,当在Java程序中创建一个线程,它就被称为用户线程守护线程(Daemon):一般是为工作线程服务的,当所有的用户线程结束,守护线程自动结束常见的守护线程:垃圾回收机制例子1:如何将一个线程设置成守护线程packageli.thread.method;publicclassThreadMethodExercise{publicstaticvoidmain(String[]args)throwsInterruptedException{MyDaemonThreadmyDae
JavaGUI-坦克大战037.线程的应用017.1坦克子弹发射思路在坦克大战2.0基础上添加如下功能:当玩家按下j键,就发射一颗子弹。思路:当发射一颗子弹后,就等于启动了一个线程Hero类要有子弹的对象,当按下j键时,我们就启动一个发射行为(线程),让子弹不停地移动,形成一个设计的效果我们的MyPanel需要不停地重绘,才能出现该效果当子弹移动到面板边界时,就应该销毁(把启动的子弹的线程销毁)7.2我方发射子弹1.创建子弹类Shot:实现Runnable接口,创建线程,在run方法中用while循环不停地改变子弹坐标,实现子弹射出的效果packageli.TankGame.version03
JavaGUI-坦克大战037.线程的应用017.1坦克子弹发射思路在坦克大战2.0基础上添加如下功能:当玩家按下j键,就发射一颗子弹。思路:当发射一颗子弹后,就等于启动了一个线程Hero类要有子弹的对象,当按下j键时,我们就启动一个发射行为(线程),让子弹不停地移动,形成一个设计的效果我们的MyPanel需要不停地重绘,才能出现该效果当子弹移动到面板边界时,就应该销毁(把启动的子弹的线程销毁)7.2我方发射子弹1.创建子弹类Shot:实现Runnable接口,创建线程,在run方法中用while循环不停地改变子弹坐标,实现子弹射出的效果packageli.TankGame.version03
Spring管理Bean-IOC1.Spring配置/管理bean介绍Bean管理包括两方面:创建bean对象给bean注入属性Bean的配置方式:基于xml文件配置方式基于注解配置方式2.基于XML配置bean2.1通过类型来获取bean通过id来获取bean在Spring基本介绍中已经使用过,这里不再赘叙案例说明:通过spring的ioc容器,获取一个bean对象(说明:获取bean的方式:按类型)完成步骤:创建一个Java对象Monster.java在beans.xml中配置Monster.java:packagecom.li.bean;/***@author李*@version1.0*