java贪吃蛇课程设计
精品文档---下载后可任意编辑 设计人员: 设计地点(单位): A5-103 设计题目: 贪吃蛇游戏 完成日期: 年 月 日 指导老师评语: _______________________________________________________________________________ 成绩(五级记分制):_________________ 老师签名:_________________________ 摘 要 近年来,java作为一种新的编程语言,以其简单性、可移植性和平台无关性等优点,得到了各个国家广泛地认可。本文基于java技术和Eclipse开发环境,设计并实现了一个操作简单、界面美观的“贪吃蛇”游戏。“贪吃蛇”游戏是一个经典的游戏,它因操作简单、娱乐性强而广受欢迎。就整个游戏来说,目的是通过本游戏的设计与实现,达到学习java技术和熟悉软件开发流程的目的。 关键词:java , 贪吃蛇, eclipse 目录 绪论1 1 Java的概述2 1.1 java的简介2 1.2 环境配置2 1.2.2 系统工具的选择安装3 2 系统介绍3 2.1 系统的介绍3 2.2 设计目的4 2.3 需求分析4 2.3.1 游戏形状需求4 2.3.2 键盘事件处理4 2.3.3 显示需求4 2.3.4 接口控制4 3 系统设计5 3.1 系统所需定义的类5 3.2 功能设计6 4 系统实现6 4.1 界面初始化6 4.2 蛇体实现8 4.2.1 蛇体坐标类8 4.2.2 初始化蛇体9 4.2.3 蛇体变化9 4.3 食物实现12 4.4 障碍物实现12 4.5 游戏控制实现12 4.6 排行榜实现12 5 游戏的测试13 6 总结14 致 谢14 参考文献15 精品文档---下载后可任意编辑 绪论 “贪吃蛇”游戏是一个经典的游戏,对于程序来说贪吃蛇制作相对简单,而且逻辑性强,通常是要步入游戏开发这个队伍前必练的项目。贪吃蛇这个游戏的制作方法对于以前的我而言是很神奇的,我希望通过我们所学的知识和自己的努力把它剖析起来。正是由于这个想法,本文基于java技术和Eclipse开发环境,设计并实现了一个操作简单、界面美观的“贪吃蛇”游戏。由于时间的紧迫和技术有限,编写的贪吃蛇游戏还是相对简单,但就整个游戏来说,目的是通过本游戏的设计与实现,达到学习java技术和熟悉软件开发流程的目的。我信任在以后通过自己不断的努力我会在编程这条路上越走越远。本文首先介绍了java技术,对java技术进行了概述,然后对开发工具进行了选择,又进行了需求分析进而通过java语言设计出了贪吃蛇这个经典的小游戏,为了保证代码的正确性和可靠性最后还进行了系统测试。 1Java的概述 1.1 java的简介 java最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在Oak几近失败之时,随着互联网的进展,Sun看到了Oak在计算机网络上的宽阔应用前景,于是改造了Oak,以“Java”的名称正式发布。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。但在 J2SE 1.4.2 发布后,Java 的执行速度有了大幅提升[3]。 Java是一种跨平台,适合于分布式计算环境的面对对象编程语言。 具体来说,它具有如下特性: 简单性、面对对象、分布式、健壮性、结构中立、安全性、可移植、解释的、高性能、多线程、动态性等。 1.2 环境配置 1.2.1 JDK安装 ⑴ 安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为D:\java\jdk1.6.0_02; ⑵ 安装完成后,右击“我的电脑”,点击“属性”; ⑶ 选择“高级”选项卡,点击“环境变量” ⑷ 在“系统变量”中,设置三项属性,JAVA_HOME,PATH,CLASSPATH,若已存在则点击“编辑”,不存在则点击“新建”; ⑸ JAVA_HOME指明JDK安装路径。 ⑹“开始”->;“运行”,键入“”; ⑺ 键入命令“java -version”,“java”,“javac”几个命令,出现画面,说明环境变量配置成功。 1.2.2 系统工具的选择安装 本论文采纳的工具是Eclipse。Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。 2 系统介绍 2.1 系统的介绍 本论文设计的游戏名称为贪吃蛇,蛇身是有很多的小方块组成的,蛇头与蛇身都是用小方块来组成,每一个小方块是蛇身上的最小单位,贪吃蛇所吃的食物也是有一个个小方块儿组成,食物会随机出现,当蛇吃掉一个小方块儿后蛇身会变长然后会随机出现下一个小方块儿。障碍物也会随机出现,而且随着时间增长,障碍物会增多,当蛇头碰到蛇身、障碍物或者边框的时游戏会自动结束。 2.2 设计目的 综合运用在校所学的知识和技能,设计并实现贪吃蛇游戏,使自己熟悉应用系统的开发的过程,培育独立的思考能力,校验学习效果和动手能力,提高实践动手能力。 需求分析 在一定的范围内, 给出一条小蛇和随机出现一个食物与一个障碍物,当小蛇吃到食物时蛇身就长长。考虑到用户需求对蛇的移动做了多组快捷键设置,游戏整体界面简洁,操作简单。 2.3.1 游戏形状需求 绘制简洁清楚的小蛇和食物,小蛇由几个方块组成,食物由一个图片组成。障碍物由多个图片组成随机形状。 2.3.2 键盘事件处理 小蛇可以通过键盘方向键(上,下,左,右)或者按键(W,S,A,D)进行方向的移动。当蛇头碰到障碍物,蛇身或者墙壁的时候游戏会结束。 2.3.3 显示需求 当小蛇吃掉食物后会变长,并且吃完食物时食物会消逝,并立即产生一个1个新的食物,蛇身随着蛇的移动不断刷新。 2.3.4 接口控制 本软件通过键盘进行操作,在windows操作系统下,利用键盘的按键进行操作,要使用键盘的接口事件。 3 系统设计 3.1 系统所需定义的类 游戏设计中所涉及的相关资源,如图: 图3.1 系统资源 涉及资源如下: 1、SnakeMain.java 类是程序运行主类,通过调用相关资源实现游戏运行。 2、SnakeAt.java 类是蛇的实体类,包含蛇身点的横坐标与纵坐标属性,通过多个此类对象实现蛇身。 3、SnakeFrame 类是游戏主体设计类,包含游戏界