毕业设计论文——最终版 下载本文

1.1.5 分布式

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

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

1.2 开发工具Eclipse介绍

Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是

一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。

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

尽管 Eclipse 是使用 Java 语言开发的,但它的用途并不限于 Java 语言;例如,支持诸如 C/C++等编程语言的插件已经可用,或预计会推出。Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统等。

1.3 开发工具JDK介绍

Sun Microsystems公司在推出Java语言的同时,推出了一套开发工具JDK。Sun提供的

基于字符模式的Java开发工具包JDK:Java开发工具(JDK)是许多Java专家最初使用的开发环境。Java是平台无关的语言是因为用Java写的应用程序不用修改就可在不同的软硬件平台上运行。

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

所有的Java文件编辑、编译、调试、解释运行都是通过使用字符命令来执行操作。JDK由一个标准类库和一组建立,测试及建立文档的Java实用程序组成。其核心Java API是一些预定义的类库,开发人员需要用这些类来访问Java语言的功能。JDK 是整个Java的核心,包括了Java运行环境(Java Runtime Environment),一堆Java工具和Java基础的类库。

2

不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。

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

1.4 应用环境

(1) 操作系统: Windows 7,Windows xp等。

(2) 应用软件:jdk7.1,eclipse。

2 系统需求分析

2.1 需求分析

本系统主要是完成贪吃蛇游戏的基本操作,用户可以自己练习和娱乐。本系统需要满足以下几点要求:

(1) 利用方向键来改变蛇的运行方向。

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

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

2.2 可行性分析

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

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

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

3

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

3 系统概要设计

3.1 游戏流程图

进入游戏界面

操作:空格:暂停

上移:

下移:

左移:

右移:

没有吃到食物,游戏中途欲中断,

稍候进行游戏 且碰到边界

单击重新开始游戏 单击暂停游戏

单击开始游戏,游戏恢复正常

图3-1 游戏流程图

点击开始按钮,游戏开始,蛇随机产生 4

3.2 游戏整体结构图

图3-2 游戏整体结构图

3.3 设计目标

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

3.4 系统功能模块

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

5

表3-1 java源文件及其功能

序号 1 2 3 4 5 6 7 8 9 10 文件名 MainFrame GameOptionPanel 主要功能 该文件为程序入口,含有main方法。 实现菜单控制运行等总体要求,实现方向键控制蛇的方向,空格键控制游戏暂停或继续等。 SnakeListener GameListener Food Ground Snake Global Controller GamePanel 蛇的监听器 游戏监听器 该文件实现组成蛇身的单位-食物。 该文件实现障碍物-石头 该文件实现蛇类 该文件为工具类,实现一些配置 控制器,控制蛇、食物、石头 游戏的显示界面设置 2、主要类之间的对应关系如下:

图3-3 主要类之间的关系

3、因为蛇不能直接操作显示面板(GamePanel),所以定义一个监视器SnakeListener,里面有两个方法:snakeMoved()和snakeEatFood()。

6