您好,欢迎来到榕意旅游网。
搜索
您的当前位置:首页基于java的游戏设计——贪吃蛇

基于java的游戏设计——贪吃蛇

来源:榕意旅游网



..

毕业设计论文

基于Java的游戏设计——贪吃蛇

a



..

毕业设计(论文)中文摘要

(题目):基于Java 的游戏设计——贪吃蛇
摘要“贪吃蛇”游戏是使用Java 语言开发的一款经典的游戏,它因操作简单、娱乐性强而广受欢迎。本文基于Java 技术和eclipse 开发环境,开发了一个操作简单、界面美观、功能较齐全的“贪吃蛇”游戏。整个游戏程序分为十个类模块,实现了游戏的开始、暂停、结束,能够实现加速和减速。通过本游戏的开发,达到学习Java 技术和熟悉软件开发流程的目的。

本文在介绍Java 相关技术时对“贪吃蛇”游戏的整个生命周期的各个开发阶段进行了详细地介绍。首先,分析了开发本游戏软件的可行性;其次,从游戏主界面等几方面,分析了本游戏的功能需求;然后,进行了游戏的概要设计和详细设计,这也是本文的重点。概要设计给出两个功能模块的主框架以及八个类模块的函数调用关系;详细设计重点给出各个类模块的程序列表,介绍了各个类包含的变量、使用的方法,展示了游戏的界面。

为了保证程序代码的正确性和功能实现的可靠性,本文还介绍了游戏软件的程序调试过程和功能测试结果。

关键词Java eclipse 贪吃蛇 开发流程

a



..

毕业设计(论文)外文摘要

Title : Java-based game design ——Snake
Abstract: Snake game is a classic game using the Java language development,it is simple, entertaining and popular. This article is based on Java technology and the Eclipse development environment, developing a simple, beautiful interface, Full-featured "Snake" game. The entire game program is divided into ten modules, the start of the game, pause, end being able to achieve speed up and speed down . Through the development of the game, to achieve the purpose of learning Java technology and familiar with the software development process.

Introducing Java-related technologies, a detailed description of the various development phases of the entire life cycle of the "Snake" game. First, the analysis of the feasibility of the development of the game software; Secondly, the game from the main game interface aspects, functional requirements; Then, the outline design and detailed design of the game, which is the focus of this article. Outline design gives the main frame of the two functional modules and The eight modules function call relationship; Detailed design focusing of each module is given the list of programs, each class contains variables, the methods used, showing the game's interface .

In order to ensure the correctness and functions achieving reliability of the program code, the article also describes the results of the game software debugging process and functional testing.

a



..

keywordsJava eclipse Snake the development process

a



..

目录

1绪论.............................................................................................................................................11.1JAVA语言的特点................................................................................................................11.2开发工具ECLIPSE介绍.....................................................................................................21.3 开发工具JDK介绍...........................................................................................................21.4应用环境.............................................................................................................................32系统需求分析...........................................................................................................................32.1需求分析.............................................................................................................................32.2可行性分析........................................................................................................................33系统概要设计...........................................................................................................................43.1游戏流程图........................................................................................................................43.2设计目标.............................................................................................................................53.3系统功能模块....................................................................................................................53.4系统数据结构设计...........................................................................................................74系统详细设计........................................................................................................................104.1程序设计...........................................................................................................................104.2贪吃蛇游戏各功能界面截图......................................................................................135系统测试.................................................................................................................................165.1测试的意义......................................................................................................................165.2测试过程...........................................................................................................................165.3测试结果...........................................................................................................................17结论...............................................................................................................................................18致谢...............................................................................................................................................19参考文献......................................................................................................................................19

a



..

1 绪论

贪吃蛇是世界知名的益智类小游戏,选择这个题目一方面是为了将我们自己的所学知识加以运用;另一方面,我希望通过自己的所学知识把它剖析开来,通过自己的动手实践,真正的了解它的本质和精髓。希望通过这次实践,能从中提高自己的编程能力。并从中学会从零开始分析设计程序,达到学以致用,活学活用的目的。另外,通过本游戏的开发,达到学习Java技术和熟悉软件开发流程的目的。

本游戏的开发语言为Java,开发工具选用EclipseJava是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。这里采用Java作为开发语言主要是基于Java的面向对象和可移植性。Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

1.1 Java 语言的特点

1.1.1 简单性
JavaC++语言非常相近,但JavaC++简单,它抛弃了C++中的一些不是绝对必要的功能,如头文件、预处理文件、指针、结构、运算符重载、多重继承以及自动强迫同型。Java实现了自动的垃圾收集,简化了内存管理的工作。

1.1.2 平台无关性
Java引进虚拟机原理,并运行于虚拟机,实现不同平台之间的Java接口。Java的数据类型与机器无关。

1.1.3 安全性
Java的编程类似C++,但舍弃了C++的指针对存储器地址的直接操作,程序运行时,内a



..

存由操作系统分配,这样可以避免病毒通过指针入侵系统。它提供了安全管理器,防止程序的非法访问。

1.1.4 面向对象
Java吸收了C++面向对象的概念,将数据封装于类中,实现了程序的简洁性和便于维护性,使程序代码可以只需一次编译就可反复利用。

1.1.5 分布式
Java建立在TCP/IP网络平台上,提供了用HTTPFTP协议传送和接收信息的库函数,使用其相关技术可以十分方便的构建分布式应用系统。

1.1.6 健壮性
Java致力于检查程序在编译和运行时的错误,并自动回收内存,减少了内存出错的可能性。Java取消了C语言的结构、指针、#define语句、多重继承、goto语句、操作符、重载等不易被掌握的特性,提供垃圾收集器自动回收不用的内存空间。

1.2 开发工具Eclipse介绍
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopment ToolsJDT)。

虽然大多数用户很乐于将Eclipse当作JavaIDE 来使用,但Eclipse的目标不仅限于此。Eclipse还包括插件开发环境(Plug-inDevelopment EnvironmentPDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。

尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持

a



..

诸如C/C++等编程语言的插件已经可用,或预计会推出。Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统等。

1.3 开发工具JDK介绍
SunMicrosystems 公司在推出Java语言的同时,推出了一套开发工具JDKSun提供的基于字符模式的Java开发工具包JDKJava开发工具(JDK)是许多Java专家最初使用的开发环境。Java是平台无关的语言是因为用Java写的应用程序不用修改就可在不同的软硬件平台上运行。

Java源程序编写借助于记事本编辑工具。

所有的Java文件编辑、编译、调试、解释运行都是通过使用字符命令来执行操作。JDK由一个标准类库和一组建立,测试及建立文档的Java实用程序组成。其核心JavaAPI 是一些预定义的类库,开发人员需要用这些类来访问Java语言的功能。JDK是整个Java的核心,包括了Java运行环境(JavaRuntime Environment),一堆Java工具和Java基础的类库。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。

最主流的JDKSun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如IBM公司开发的JDKBEA公司的Jrocket,还有GNU组织开发的JDK等等。其中IBMJDK包含的JVMJavaVirtual Machine)运行效率要比SunJDK 包含的JVM高出许多。而专门运行在x86平台的Jrocket在服务端运行效率也要比SunJDK 好很多。

1.4 应用环境
(1)操作系统:Windows7Windowsxp 等。(2) 应用软件:jdk7.1eclipse

a



..

2 系统需求分析

2.1 需求分析
本系统主要是完成贪吃蛇游戏的基本操作,用户可以自己练习和娱乐。本系统需要满足以下几点要求:
(1)利用方向键来改变蛇的运行方向。

PgUpPgDn控制速(2)空格键或回车键暂停或继续游戏,并在随机的地方产生食物,
度快慢。

(3)吃到食物就变成新的蛇体,碰到壁或自身则游戏结束,否则正常运行。

2.2可行性分析
贪吃蛇游戏是一种简单的大众的游戏,自从计算机实现以来,深受广大电脑玩家的喜爱,做一个简单的贪吃蛇小游戏,也比较符合现代人用来打发闲暇时光的方式。

贪吃蛇的核心算法是如何实现移动和吃掉食物,没有碰到食物的时候,把当前运动方向上的下个节点入队,并以蛇节点的颜色绘制这个节点,然后把头指针所指的节点出队,并以游戏框架内部背景色重绘出队的节点,这样就可以达到移动的效果。而在吃到食物的时候,则只需把食物入队即可。实现贪吃蛇的基本的蛇身移动、吃到食物身体增长、和碰到墙壁或自身死亡,能够暂停和开始。

本次设计主要运用java语言来完成。Java语言是一种跨平台,适合于分布式计算环境的面向对象编程语言,用Java写的应用程序不用修改就可在不同的软硬件平台上运行。

由于Java主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全保用户从网络下载程序执行就非常危险。Java通过自己的安全机制防止了病毒程序的产生证,
和下载程序对本地系统的威胁破坏。

a



..

3 系统概要设计

3.1 游戏流程图

进入游戏界面

点击开始按钮,游戏开始,

蛇随机产生

/^\/^\
_|__|
O|操作:空格:暂停

\_/ \

上移:

/~

下移:

左移:
\____|__________/ \

\_______

\

游戏中途欲中断,
稍候进行游戏

|

单击暂停游戏

/

没有吃到食物,且碰到边界

|
\
单击重新开始游戏

/

\

/
\\

/

单击开始游戏,游戏恢复正常3-1 游戏流程图

/

\\
/
/
3.2 游戏整体结构图
\ \
/
/ _----_
\ \
/
/ _-~
~-_ | |

a
( ( _-~

_--_

~-_

_/ |

\



..

3-2游戏整体结构图

3.3 设计目标
本系统是针对贪吃蛇小游戏的Java程序,利用方向键来改变蛇的运行方向,空格键暂停或继续游戏,并在随机的地方产生食物,吃到食物就变成新的蛇体,碰到壁或自身则游戏结束,否则正常运行。

3.4 系统功能模块
1、本系统共包括10个类文件。
java源文件及其功能如表所示。

a



..

3-1 java 源文件及其功能

序号

文件名

主要功能

1

MainFrame

该文件为程序入口,含有main 方法。

2

GameOptionPanel

实现菜单控制运行等总体要求,实现方向键控制蛇的方向,空格键控制游戏暂停或继续等。

3

SnakeListener

蛇的

4

GameListener

游戏

5

Food

该文件实现组成蛇身的单位-食物。

6

Ground

该文件实现障碍物-石头

7

Snake

该文件实现蛇类

8

Global

该文件为工具类,实现一些配置

9

Controller

控制器,控制蛇、食物、石头

10

GamePanel

游戏的显示界面设置

2、主要类之间的对应关系如下:

3-3主要类之间的关系

3、因为蛇不能直接操作显示面板(GamePanel),所以定义一个监视器SnakeListener,里面

有两个方法:snakeMoved()和snakeEatFood()

a



..

3-4通过事件监听建立联系

3.5 系统数据结构设计

3.5.1 蛇、石头、食物的表示
用一个大的表格来表示显示区域,里面的格子就是组成蛇的基本单位,一个格子可以代表一个食物,也可以代表一个石头,几块连在一起的石头就可以代表一条蛇。使用坐标来区分这些格子。

3-5蛇、石头、食物的表示

这里用一个集合来存储这些坐标,并且要求能够区分出蛇头和蛇尾。

3.5.2 蛇的移动
蛇向前移动一步,可以看作是蛇头前面增加了一个节点,蛇的尾巴上少了一个节点(即

a



..

去尾,加头)

3-6蛇的移动

3.5.3 存储蛇身的数据结构
由于要区分蛇头和蛇尾,因此这个数据结构必须是有序的。另一方面,我们需要经常的访问第一个和最后一个节点,所以LinkedList最合适。因为它有getFirst()getLast(),和removeLast()方法。

3-7根据原蛇头和方向计算新蛇头的坐标

3.5.4 蛇的移动方向
蛇下一步移动到哪里,是由方向来控制的。根据原蛇头的坐标和方向来确定新蛇头的坐标,因此在这里用int型常量来表示蛇的移动方向。在原坐标的基础上,根据蛇头的运动方向来确定新蛇头的坐标,比如向上移动就是y-1

a



..

Snake中增加蛇的方向向量:
publicstatic final int UP = 1;
publicstatic final int DOWN = -1;
publicstatic final int LEFT = 2;
publicstatic final int RIGHT = -2;

3.5.5 如何显示蛇身
显示蛇身,其实就是填充,用颜色填充格子。

需要4个参数,像素坐标x,像素坐标y,格子宽度,格子高度。

像素坐标就是矩形左上角的坐标

3-8格子坐标和像素坐标

3.5.6 蛇身的移动方向
1)相反方向
和上一次移动的方向相反的方向称为相反方向,这种输入应该忽略。这样可以防止蛇从自己的身体中穿过。

2)无效方向
只有在蛇的这一次移动之后和下一次移动之前这个时间间隔内输入了多个非相反方向,

a



..

最后一个是有效方向,其他的都是无效方向。

蛇的最终运动方向以有效方向为准。

3Snake中增加,并另外启动一个线程来不断调用蛇的move(),Snake中提供一个启动线程的方法。

3.5.7 吃到食物判定
通过判定坐标是否重合来判断,只需要判断蛇头是否和食物重合就可以了,因为蛇的身体都是走蛇头走过的地方,蛇吃掉食物后身体就会变长。在ControllersnakeMoved中添加如下代码:
/*判断是否吃到食物*/
if(food != null && food.isSnakeEatFood(snake)) {
/*吃到食物后,蛇增加身体,再重新丢一个食物*/
snake.eatFood();
food.setLocation(ground== null ? food.getNew() : ground
.getFreePoint());
}/*如果吃到食物,就肯定不会吃到石头*/
elseif (ground != null && ground.isSnakeEatRock(snake)) {
/*如果吃到的是石头,或吃到自己的身体,就让蛇死掉*/
stopGame();
}
if(snake.isEatBody())
stopGame();

a



..

4 系统详细设计

4.1 程序设计

4.1.1 主类MainFrame
1)主类为此程序的入口,定义了MainFrame的对象frame,开始运行此程序。

2)源代码见文件MainFrame.Java

4.1.2 MainFrame
1)成员变量见表4-1
4-1主要成员变量

成员变量描述

变量类型

名称

选项面板游戏面板蛇类对象石头对象食物对象控制对象速度标签

private GameOptionPanel private GamePanel
private Snake
private Ground
private Food
private Controller
private JLabel

optionPanel
gamePanel
snake
ground
food
controller
infoLabel

2)方法见表4-2

4-2主要方法

方法名

功能

gameOver()
gameStart()
gameContinue() gamePause()

游戏结束
游戏开始
游戏继续
游戏暂停

4.1.3 Snake
1)成员变量见表4-3

a



..

4-3主要成员变量

成员变量描述

变量类型

名称

上下左右(方向)蛇体
蛇头坐标
蛇尾坐标
是否活着
是否暂停
速度
监听

int
LinkedList<Point>
Point
Point
boolean
boolean
int
Set<SnakeListener>

UPDOWNLEFTRIGHT body
head
tail
live
pause
speed
listener

2)方法见表4-4

4-4 主要方法

方法名

功能

eatFood()

setHeadColor()
setBodyColor()
changeDirection(int) move()
begin()

判断食物是否被蛇吃掉,如果食物在蛇运行方向的正前方,并且与蛇头接触,则被吃掉
设置蛇头的颜色
设置蛇身的颜色
改变运行方向
蛇在运行中所采取的措施
开启一个新的线程驱动蛇定时移动

4.1.4 Food

1)成员变量见表4-5

4-5主要成员变量

成员变量描述

变量类型

名称

颜色
随机

private Color
private Random

color
random

2)源代码见文件Food.java

a



..

4.1.5 Controller
该类包含控制器和处理按键逻辑,控制器,控制GroundSnakeFood,负责游戏的逻辑处理按键事件,实现了SnakeListener接口的snakeMoved()方法,可以处理Snake触发的事件,该类继承KeyAdapter类并且覆盖keyPressed()方法:处理按键事件,根据按键不同,发出不同的指令:
UP:改变蛇的移动方向为向上
DOWN:改变蛇的移动方向为向下
LEFT:改变蛇的移动方向为向左
RIGHT:改变蛇的移动方向为向右
SPACE:暂停/继续
PgUp/PgDn:加速/减速蛇的移动
Y:开始新游戏的方法

4.1.6 Ground
可以叫做地形,或地面,和食物一样,Ground也有xy坐标和颜色等属性,构造方法Ground()初始化地图,设置格局,可以通过setRockColor()方法设置石头的颜色,方法isSnakeEatRock()判断蛇是否吃到食物,最后运用drawMe()方法显示石头。

源代码见文件Ground.java

4.1.7 GameListener
此类为游戏监听类,实现游戏的监听功能。

源代码见文件GameListener.java

4.1.8 SnakeListener
此类为蛇的监听类,实现蛇运动的监听,蛇移动的监听snakeMoved(),蛇吃到食物的监a



..

snakeEatFood()

源代码见文件SnakeListener.java

4.1.9 Global
工具类
此类中存放了其他类中用到的一些常量:格子的像素(宽度,高度)、蛇的初始长度和初始速度等。

源代码见文件Global.java

4.1.10 GameOptionPanel
此类为游戏的选项面板类,实现游戏面板的控制。

源代码见文件GameOptionPanel.java

4.1.11 GamePanel
此类为游戏的显示界面设置,可以通过setBackgroundColor()设置游戏的背景颜色。

源代码见文件GamePanel.java

a



..

4.2 贪吃蛇游戏各功能界面截图

4.2.1游戏的初始界面

4-1初始界面

4-2控制面板

4-3速度标签

a



..

4.2.2游戏运行过程界面

1)鼠标点击开始新游戏按钮,开始游戏:

4-4开始游戏

a



..

4-5开始游戏(有加速有改颜色 有网格)
2)按空格键,游戏开始运行,蛇开始移动,并且吃到一次食物即红色方块后就变成蛇体:

4-6吃到食物身体变长
3)按方向键改变蛇的运行方向,并且碰壁后从新开始游戏,红色方块随机地方产生:

a



..

4-7碰壁死亡

5 系统测试

5.1 测试的意义

系统测试是为了发现错误而执行程序的过程,成功的测试是发现了至今尚未发现的错误

的测试。测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。应根据开

发各阶段的需求、设计等文档或程序的内部结构精心设计测试用例,并利用这些实例来运行

程序,以便发现错误。系统测试是保证系统质量和可靠性的关键步骤,是对系统开发过程中

的系统分析系统设计和实施的最后复查。根据测试的概念和目的,在进行信息系统测试时应

遵循以基本原则。

5.2 测试过程

(1)拟定测试计划。在制定测试计划时,要充分考虑整个项目的开发时间和开发进程以及

一些人为因素和客观条件等,使得测试计划是可行的。测试计划的内容主要有测试的内容、

进度安排、测试所需的环境和条件、测试培训安排等。

a



..

(2)编制测试大纲。测试大纲是测试的依据。它明确详尽地规定了在测试中针对系统的每一项功能或特性所必须完成的基本测试项目和测试完成的标准。

(3)根据测试大纲设计和生成测试用例。在设计测试用例的时候,可综合利用前面介绍的测试用例和设计技术,产生测试设计说明文档,其内容主要有被测项目、输人数据、测试过程、预期输出结果等。

(4)实施测试。测试的实施阶段是由一系列的测试周期组成的。在每个测试周期中,测试人员和开发人员将依据预先编制好的测试大纲和准备好的测试用例,对被测软件或设备进行完整的测试。

(5)生成测试报告。测试完成后,要形成相应的测试报告,主要对测试进行概要说明,列出测试的结论,指出缺陷和错误,另外,给出一些建议,如可采用的修改方法,各项修改预计的工作量及修改的负责人员。

5.3 测试结果
贪吃蛇测试情况如表5-1所示:
5-1贪吃蛇测试情况

执行的操作

期望的结果

实际结果

打开文件,运行代码

代码正常运行,无错误信息

符合期望结果

点击“开始游戏”

贪吃蛇出现,食物出现

符合期望结果

点击“暂停游戏”

游戏暂停,蛇和食物都静止

符合期望结果

点击“停止游戏”

游戏停止,重新开始新游戏

符合期望结果

利用方向键控制方向,空格键暂停游戏

蛇运行方向正常,空格键暂停游戏

符合期望结果

键盘按PgUp/PgDn

蛇加速/减速运动

符合期望结果

点击“设置背景颜色”

出现颜色选项,背景颜色变化

符合期望结果

点击“设置蛇头/蛇身/食物颜色”

蛇头、蛇身和食物颜色变化明显且显示正常效果

符合期望结果

a



..

显示网格”打钩

出现网格,并且自行选择网格颜色

符合期望结果

点击“恢复默认设置”

所有设置都恢复到初始化状态

符合期望结果

蛇每吃到一个食物

身体变长

符合期望结果

蛇碰壁或者吃到自己的身体

结束游戏

符合期望结果

通过以上测试,验证程序运行正常,没有发现什么错误。

结论

毕业设计是我们作为学生在学习阶段的最后一个环节,是对所学基础知识和专业知识的一种综合应用,是一种综合的再学习、再提高的过程,这一过程对我们学生的学习能力和思考及工作能力也是一个培养,同时毕业设计的水平也反映了大学教育的综合水平,因此在大学的学习学校十分重视毕业设计这一环节,加强了对毕业设计工作的指导和动员教育。

过程中,毕业设计是一个重要的环节,是我们步入社会参与实际工作的一次极好的演示,也是对我们自学能力和解决问题能力的一次考验,是学校生活与社会生活间的过渡。

在完成毕业设计的这段时间里,我收获颇多:
通过这次的java贪吃蛇游戏设计我了解到java语言的特点:简单性、面向对象、平台无关性、可移植性、解释性、髙性能、动态性、可靠性和安全性、多线程、分布式处理等,在课程设计过程中不仅巩固了我们以前的基础理论知识,而且使我们各个方面的能力都有很大的提高。从一开始的无从下手,到不断的查阅资料,图书馆借书,再到请教老师的帮助,这些都很好的锻炼了我们理论联系实际,与具体项目、课题相结合的能力,开发、设计游戏的能力进一步在课程设计中体现。这让我学会了很多,为以后的学习和工作加强。在设计过程中,总是遇到这样或那样的问题。有时发现一个问题的时候,需要做大量的工作,花大量的时间才能解决。为以后的工作积累了经验,增强了信心。既让我们懂得了怎样把理论应用于实际,又让我们懂得了在实践中遇到的问题怎样用理论去解决,它更是自己综合运用所学

a



..

知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节。其实我们可以把毕业设计看作是一个社会实践的内容,在完成毕业设计的时候,所用到的知识,以及所具备的专注力和责任心,同样在以后的社会工作中是必不可少的。

任何事情都是一分为二的,在毕业设计过程中也暴露出自己专业基础的很多不足之处。例如对java语言的综合运用的技巧的缺乏,对一些java类的理解不够透彻,等等。感觉自己所学习的只是冰山一角,面对稍微复杂的东西还是没能得心应手,再一次体会到学无止境的意义了。

这款游戏的优点,就是简单的画面和容易的操作很容易使玩家就上手,适合不通年龄段的玩家娱乐。当然这款游戏也存在有不足的地方,有些功能还是没有实现。通过这次设计过程中,我查阅了大量的资料,对java有了更深刻的认识,通过这次的设计,更提高了我在 在编程方面我还需要努力学程序设计和调试方面的技巧,更重要的是我认识了自己的不足,
习来充实自己,来获取更大的收获。

致谢

大学三年学习时光已经接近尾声,毕业论文的完成也随之画上了的句号,在此我想对我的学校,我的父母、亲人们,我的老师和同学们表达我由衷的谢意。感谢我的家人对我大学三年学习的默默支持;感谢我的学校给了我在大学三年深造的机会,让我能继续学习和提高;感谢所有教过我的老师和同学们三年来的关心和鼓励。

当然,这次的毕业设计得到了很多老师和同学的帮助,首先,最主要感谢的是我的指导老师——王莉老师,她为人随和热情,治学严谨细心。王老师始终认真负责地给予我深刻而细致地指导,帮助我拓宽思路,精心点拨、热忱鼓励。在整个毕业设计过程中她给了我很大的帮助:在毕业设计选题时她给了我很多的意见,同时又帮我具体分析使我最后选择了基于java游戏设计这个具体目标,让我的毕业设计有了具体的方向。在论文提纲制定时,我的思

a



..

路不是很清晰,经过老师的帮忙,让我在写作时思路更加清晰和明确。在完成初稿后,老师

认真查看了我的文章,指出了我存在的很多问题,然后不断的修改完善。在此十分感谢王老

师的细心指导,才能让我顺利完成毕业设计论文。

最后,感谢在整个毕业设计期间和我密切合作的同学,和曾经在各个方面给予过我帮助

的伙伴们,在此,我再一次真诚地向帮助过我的老师和同学表示衷心的感谢!

参考文献

1、张思民,Java开发技术与工程实践[M].清华大学出版社,2010-11
2、刘彬彬,马.Eclipse应用开发完全手册[M].人民邮电出版社,2007-93()克罗夫特著.彭晖译,Java游戏高级编程[M].清华大学出版社,2005-8-14、王晓东,计算机算法设计与分析(第三版)[M].电子工业出版社,2009-12-15、宛延闿,Java程序设计实例剖析.,国防工业出版社,2003-3
6、张恒汝,Java十大经典案例.,科学出版社,2005-1
7、郑阿奇,Java实用教程(第二版),电子工业出版社,2009-8-1

a

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- nryq.cn 版权所有 赣ICP备2024042798号-6

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务