用java做坦克游戏

用java做坦克游戏

ID:15943737

大小:134.50 KB

页数:16页

时间:2018-08-06

用java做坦克游戏_第1页
用java做坦克游戏_第2页
用java做坦克游戏_第3页
用java做坦克游戏_第4页
用java做坦克游戏_第5页
资源描述:

《用java做坦克游戏》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第一次课一、要做的工作1、产生一个800*600的窗口,背景色为绿色。窗口可以被关闭,但不允许改变大小2、在窗口里画出一个红色的圆代表坦克3、让坦克动起来改变坦克的位置就相当于坦克移动了,因此首先需要把坦克的位置描述改为变量每重画一次坦克就动一次,让坦克不断的动就要不断的重画,我们用线程来控制二、知识点1、使用eclipse建立项目,创建包和类的方法2、变量命名规则:所有命名要求见名知义;类名首字母大小,变量和方法首字母小写;驼峰标识(比如类名:TankWar)3、事件机制l事件包括三个方面:监听器类,注册事件,覆盖方法l监听器类经常写成内部类(包括匿名内部类)

2、或是类本身实现事件接口l事件接口包括actionListener接口、窗口事件接口、鼠标事件接口、键盘事件接口等等l使用事件接口要求把接口的所有方法都写出,但不一定都实现l窗口事件和鼠标键盘事件接口还提供了较为简洁的适配器类3、匿名内部类类可以分为如下几种:l主类:包含主方法的类l内部类:在一个类内部定义的类为内部类n实例内部类:在一个类内部独立存在,不属于类的成员变量和方法n静态内部类:用static修饰的实例内部类n局部内部类:在一个类的方法内定义的类n匿名内部类:没有名字的局部内部类l外部类:包含内部类的类,外部类也可能是其他类的内部类l顶层类:不是任何类

3、的内部类为顶层类设计内部类的主要目标是“封装”。l顶层类只能用public修饰或者不修饰(即默认修饰方式),内部类可以用public,protected,private,默认四种方式修饰,局部内部类只能用默认修饰l局部内部类和匿名内部类只在方法内可见,即该类只为该方法提供服务l实例内部类只在一个类内可见,只为该类提供服务4、利用eclipse重写父类的方法在eclipse中单击右键,源代码,生成覆盖方法。此时会列出当前类的所有父类,当前类可以直接继承父类的方法。5、图形的重画机制在frame上画出的图形每次刷新时会重画,重画的过程是:系统自动调用repaint方

4、法,repaint调用update方法,update调用paint方法,从而完成重画。6、多线程见第17课详细讲解三、小注1、我们使用的Frame组件,没有使用JFrame,因为JFrame在后续画图时不好用,到时举例看第二次课一、要做的工作1、让坦克在键盘的控制下向四个方向移动2、我们已经写好一个坦克并且能够控制其移动,如果要求在加入一个坦克该如何实现?把坦克做成一个独立的类,把和坦克自身相关的属性和方法都写到坦克类中,然后在tankclient类中生成tank类的对象,然后用tanke类的对象调用坦克类的方法类完成各种功能3、让坦克在键盘的控制下向八个方向移

5、动1、如何做出八个方向?通过四个方向键组合出八个方向,比如上、右同时按下是一个方向。2、四个布尔变量代表四个方向键的按下情况,组合出八个方向,八个方向用枚举类型表示。4、优化代码:把一些可能会改变的值定义成常量一、知识点1、键盘事件适配器键盘控制坦克移动就要使用键盘事件,事件三要素:监听器类(监听接口还是适配器类?写成内部类还是匿名内部类?),注册事件,覆盖方法(keypress,keytyped,keyreleased用哪个方法)2、键盘代码如何获取键盘按键代码:e.getKeyCode()3、Switch语句:格式,case后能跟什么样的变量?没有break

6、会怎样?4、加入键盘事件后可否去掉多线程?5、面向对象编程思想:一切皆为对象。对项目进行抽象,形成若干个类,然后生成对象来实现程序功能把坦克抽象成一个类,把坦克的属性描述为成员变量,把坦克的行为描述为方法。这样就把坦克相关的属性和方法都封装到一个类中,属性一般设计为私有,通过set和get方法访问,方法一般为public,供对象调用,从而实现各种功能。6、构造方法构造方法用来描述一个对象刚生成时的状态。调用构造方法才能生成对象。一个类必须有构造方法,构造方法有三种情况lsuper(xxx):第一句调用父类的构造方法lthis(xxx):第一句调用本类的其他构造方

7、法lsuper():第一句没有调用任何其他的构造方法,系统会自动加上这句,去调用父类的无参构造方法(如果父类没有无参构造方法,那么子类会出错)任何一个构造方法必然属于上述三者之一。任何一个类都必须提供一个空的构造方法7、枚举类型Tiger中的一个重要新特性是枚举构造,它是一种新的类型,允许用常量来表示特定的数据片断,而且全部都以类型安全的形式来表示。Java代码的两个基本的构造块是类和接口。现在Tiger又引入了枚举,一般简称它为enum。这个新类型允许您表示特定的数据点,这些数据点只接受分配定义枚举enumDirection{U,D,R,L,RU,RD,LU,

8、LD,STOP};在这里

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。