JAVA游戏开发课程设计报告

3.2 界面设置构思图
3.3 界面使用设置构思
图 1 系统构思图
当出现如图所示的界面时,填写好要扫描的 IP 地址,需要扫描的端口范围和线程 数,单击命令提示按钮就可以开始扫描,扫描结果就会显示在中间的扫描结果显示区域, 在扫描状态显示区就会显示是否扫描完毕。流程图如下:
界面出现
填写 IP 地址或 者用默认的 IP
2.1 功能概述................................................................................................ 3 2.2 本系统要实现的功能............................................................................ 3 3 系统总体设计.................................................................................................4 3.1 总体分析................................................................................................ 4 3.2 界面设置构思图.................................................................................... 4 3.3 界面使用设置构思................................................................................ 4 3.4 后台设计构思........................................................................................ 5 4 系统详细设计.................................................................................................6 4.1 界面设计................................................................................................ 6 4.2 界面设计图............................................................................................ 6 4.3 后台设计................................................................................................ 7 5 实现与测试...................................................................................................10 5.1 运行要求与环境.................................................................................. 10 5.2 运行程序流程图.................................................................................. 11 5.3 运行界面.............................................................................................. 12 6 设计总结....................................................................................................... 14 参考文献........................................................................................................... 15 附件................................................................................................................... 15
2.2 本系统要实现的功能
① 端口扫描功能:扫描开放的端口,并将扫描到的开放端口号送到前台。 ② 图像显示功能:显示界面图形。 ③ 多线程功能:当客户端要求与服务器端建立连接时,服务器端就将用到多线程 功能,为每一个建立起来的连接创建一个线程。 ④ 异常抛出功能:对于明显的错误,能提示出错误的类型并结束程序的运行。
java.awt.event 的描述:提供处理由 AWT 组件所激发的各类事件的接口和类。 事件由事件源所激发,向事件源注册的事件侦听器可接收有关特定事件类型的通知。此 包定义了事件和事件侦听器,以及事件侦听器适配器,它是让事件侦听器的编写过程更 为轻松的便捷类。
《JAVA 游戏 开发》课程 设计 报告
题目
多线程端口扫描器
姓 名: 学 号: 专 业: 班 级:
申伶俐 081011136 软件技术 软件 081
计算机科学与技术系
2009 年 6 月
目录
1 设计任务与要求.............................................................................................3 2 系统功能描述.................................................................................................3
图 3 系统界面设计图
4.3 后台设计
本程序使用了为主要的 Scanner 类和 Scan 类。Scan 类的作用是创建线程扫描端口, 然后把结果显示到前台。Scanner 类的作用是构造前台布局,调用 Scan 类添加事件处理, 对输入进行错误判断,如果输入不在允许的范围之内则显示相关错误。
在本程序中用到了网络编程的两个类,下面介绍这两个类的常用方法。 InetSocketAddress 类构造方法如下: InetSocketAddress(InetAddress addr, int port):根据 IP 地址和端口号创建套接字 地址。 InetSocketAddress(int port):创建套接字地址,其中 IP 地址为通配符地址,端 口号为指定值。 InetSocketAddress(String hostname, int port):根据主机名和端口号创建套接字地 址。 Socket 类常用方法如下: Socket():通过系统默认类型的 SocketImpl 创建未连接套接字 Socket(InetAddress address, int port):创建一个流套接字并将其连接到指定 IP 地 址的指定端口号。 void bind(SocketAddress bindpoint):将套接字绑定到本地地址。 void close():关闭此套接字。 void connect(SocketAddress endpoint):将此套接字连接到服务器。 void connect(SocketAddress endpoint, int timeout):将此套接字连接到具有指定超 时值的服务器。 boolean isClosed():返回套接字的关闭状态。 boolean isConnected():返回套接字的连接状态。 本 程序 还 调用 其 他 的 一 些 类和 包 ,比 如 软 件包 java.awt.color 、java.awt.event 、 io.IOEБайду номын сангаасception、Javax.Swing、jvnet.substance.*。 java.awt.color 包的的描述:提供用于颜色空间的类。它包含了基于国际色彩联 盟 (ICC) 配置文件格式规范的颜色空间实现。它还包含了基于 ICC 配置文件格式规范 的颜色配置文件。用来使界面更加具有色彩。 Result.setBackground(Color.PINK);//设置窗口为粉红
3 系统总体设计
3.1 总体分析
本程序分为前后台系统,后台系统用于扫描主机开放端口,并把节扫描的数据送至 前台窗口显示;前台要显示扫描的结果,所以应为一个窗口,这个窗口应能够设置主机 的 IP 地址,设置端口的开始端口、结束端口和线程数,并且还能够显示扫描的状态。 在中央是显示结果的窗体。本程序还应能够有控制扫描的状态命令,附加设置最小化和 关闭按钮。
2 系统功能描述
2.1 功能概述
多线程端口扫描器是实现计算机的端口的扫描,只要在在前台设置好所要扫描的 IP、起始端口、结束端口以及所要用到的线程数,点击扫描,就可以扫描到所输入 IP 地址主机的开放端口,并显示在主窗体中;点击退出,则可以退出该程序。IP 设置应为 所在主机的 IP 地址,起始端口和结束端口应为 0~65535 之间的一个数,且起始端口应 小于结束端口的大小。线程数为 0~200 之间的一个数。点击开始后就会运行,直到扫描 完毕显示出开放端口,如果没有开放端口,则只显示扫描完毕。
设置扫描需要的线程数 或者是用默认的线程数
单击命令按钮 开始扫描
扫描结束,显示 结果显示在结 果显示区域
是 是否继续
否 退出结束
3.4 后台设计构思
图 2 系统构思流程图
合集下载

java游戏开发课程设计报告

java游戏开发课程设计报告

3.2 系统设计 3.2.1 系统总体设计
系统功能分析 本系统要用到以下的Java编程技术实现的功能: ① 网络功能:这一程序将由一个服务器程序和一个客户端程序构 成。客户端用来猜测随机字母和随机数的大小。服务器用来产生随机字 母和随机数,来确定是否猜中。 ②多线程功能:当客户端要求与服务器端建立连接时,服务器端就 将用到多线程功能,为每一个建立起来的连接创建一个线程。
7 附录 (1)基本类的程序代码: ① Server类的代码:
import .*; import java.io.*; import java.util.*; import ng.String.*; // 服务器类 public class Server{ // 存储套接字 static DatagramSocket serv; // 存储端口号 static int port; // 存放接收到的数据包中的信息 static byte[] info = new byte[1000]; // 存储接收到的数据包 static DatagramPacket rec = new DatagramPacket(info, info.length); // 存储要发送的数据包 static DatagramPacket snd; // 存储要发送或提取出的信息 static String msg; // 主方法 public static void main(String[] args) { System.out.println("网络益智游戏——服务器"); try { // 将第1个参数转化为端口号 port = (int)Float.parseFloat(args[0]); // 创建套接字
图5 服务器运行界面
在另一台客户端的计算机上打开另一个DOS窗口,输入命令: javac Client.java 进行编译 然后输入命令:java Client 192.168.0.72 6666 运行第客户端程序,Client执行后,windows窗口会显示如图6所 示:

(2023)小游戏Java课程设计报告书(一)

(2023)小游戏Java课程设计报告书(一)

(2023)小游戏Java课程设计报告书(一)(2023)小游戏Java课程设计报告书课程背景本次小游戏Java课程设计是针对计算机科学专业大三学生的选修课程,旨在通过学习Java基础和游戏开发,提升学生的编程技能和创新能力。

课程目标本次课程将教授学生Java基础知识和游戏开发相关技术,重点包括:•Java语言基础:变量、数据类型、运算符、流程控制语句等;•面向对象编程:类、对象、继承、多态等;•简单游戏开发:窗口设计、键盘鼠标操作、游戏逻辑等;•团队合作:学生将组成小组,共同完成一个小游戏项目。

课程内容本次课程将包括以下主要内容:第一章 Java语言基础本章将介绍Java语言的基础知识,包括变量、数据类型、运算符、流程控制语句等。

第二章面向对象编程本章将介绍面向对象编程的基础知识,包括类、对象、继承、多态等。

第三章简单游戏开发本章将教授学生如何使用Java Swing和AWT库进行窗口设计、键盘鼠标操作、游戏逻辑等。

第四章小组项目本章将组织学生形成小组,共同完成一个小游戏项目,学生需要展示出自己所学到的技能,并体验团队合作的过程。

教学方法本课程将采用以下教学方法:•讲授:通过讲授理论知识,让学生掌握Java语言基础和游戏开发相关技术;•实践:通过实践操作,让学生深入了解游戏开发过程,掌握相关技能;•小组合作:通过小组合作,让学生了解团队合作和项目管理,提高创新能力和协作能力。

考核方法本课程考核将采用以下方法:•作业:学生需按时完成规定的作业任务,记录和提交相关代码和文档;•实验报告:学生需完成指定的实验项目,并撰写实验报告;•小组项目:学生需参与小组项目,完成相关任务,撰写相关文档,并进行展示和评审;•考试:学生需参加期末考试,考查对于学习内容的理解和掌握程度。

结语通过本次Java课程设计,我们希望能够让学生在实践中掌握Java语言基础和游戏开发技术,提高编程技能和创新能力,在未来的学习和工作中做好充分准备。

JAVA课程设计报告(小游戏)1

JAVA课程设计报告(小游戏)1

JAVA课程设计报告(小游戏)第一章总体设计1.1本系统的主要功能记忆测试游戏1.2系统包含的类及类之间的关系本系统共包括7个java源文件。

如图1-1所示。

图1-1 类之间的关系2.2 java源文件及其功能1.MemoryGame.java该文件负责创建记忆测试系统的主窗口,该类含有main方法,记忆测试系统从该类开始运行;2.MemoryTestArea.java该文件所包含的MemoryTestArea类是主类MemoryGame窗口的一个JPanel容器,所创建的对象成为测试区,这个测试区被添加到MemoryGame窗口的中心;3.Block.java该文件所包含的Block类是JButton的子类,负责为MemoryTestArea 类中的ArrayList数组表提供Block对象;4.Record.java该文件所包含的Record类是javax.swing包中JDialog对话框的子类,当用户成功单击出相应级别所要求的图标相同的方块后,Record创建的对象负责保存用户的名字和成绩到相应的级别文件中;5.ShowRecordDialog.java该文件所包含的ShowRecordDialog类是javax.swing包中JDialog 对话框的子类,当用户单击查看排行榜时,ShowRecordDialog创建的对象负责显示用户的成绩;6.People.java该文件所包含的People对象封装用户的名字和成绩,以便ShowRecordDialog 对象可以按成绩的高低排列用户。

第二章详细设计2.1主类MemoryGame.java(1)成员变量见表2-1表2-1 主要成员变量(属性)成员变量描述变量类型名称菜单条JMenuBar bar 字符串数组Sring imagename 测试区对象MemoryArea memoryarea 菜单JMenu menuGrade(2)方法见表2-2表2-2 主要方法成员变量描述功能备注MemoryGame() 完成窗口初始化构造函数actionPerformed(实现接口中的方法ActionEvent)Main(String[]) 软件运行的入口(3)源代码见文件×××.java2.2类×××××(1)成员变量见表2-3表2-3 主要成员变量成员变量描述变量类型名称测试区的行列数int Row,col用户的用时int usedtime 提供存储成绩的界面Record record(2)方法见表2-4表2-4 主要方法方法名功能备注MemoryTestArea() 创建memoryGame对象构造函数run() 显示图标1200毫秒2.3类Block(1)成员变量见表2-3表2-3 主要成员变量成员变量描述变量类型名称openStateIcon是方块上的图标ImageIcon openStateIcon (2)方法见表2-4表2-4 主要方法方法名功能备注setOpenStateIcon( ImageIcon)Block 对象调用setOpenStateIcon(ImageIcon)方法可也设置它上面的图标getOpenStateIcon()Block 对象调用getOpenStateIcon()方法可以获得它上面的图标2.4类ShowRecordDialog(1)成员变量见表2-3表2-3 主要成员变量成员变量描述变量类型名称gradeFile是对话框要读取的文件,该文件存储读取的成绩File gradeFile Clear是注册ActionEvent JButton clear事件的按钮showArea文本区显示对话从gradeFile文本中读出的成绩JTextArea showArea(2)方法见表2-4表2-4 主要方法方法名功能备注ShowRecorDialog()ShowRecorDialog()是构造方法,负责创建shoeDialog对象setGradeFile(File)ShowRecorDialog类创建的ShowRecorDialog对话框是主类MemoryGame窗口中的一个成员2.5 People类(1)成员变量见表2-3表2-3 主要成员变量成员变量描述变量类型名称用户的名字String name用户的用时int time(2)方法见表2-4表2-4 主要方法方法名功能备注getTime()返回timegetName()返回namecompareTo(Object)确定People对象的大小关系2.6 Record类(1)成员变量见表2-3表2-3 主要成员变量成员变量描述变量类型名称用户的用时int time 用来输入名字的文本框JTextField yourName保存成绩的按钮对象JButton enter 放弃保存成绩的按钮对象JButton cancel 级别文件File gradeFile(2)方法见表2-4表2-4 主要方法方法名功能备注Record()负责创建record对象的构造方法setGradeFile (File)Record类创建的Record对话框是测试区MemoryTextArea 中的一个成员。

小游戏Java课程设计报告书-V1

小游戏Java课程设计报告书-V1

小游戏Java课程设计报告书-V1本篇文章主要介绍小游戏Java课程设计报告书的相关内容。

1. 引言本次小游戏Java课程设计的目的是提高学生对Java语言的掌握能力和实际开发能力。

该小游戏为一款基于Java语言的桌面游戏。

2. 开发环境本次小游戏的开发环境采用Eclipse编译器,并使用Java语言作为主要开发语言。

游戏使用了Swing界面库和各种Java类库来实现不同的功能。

3. 游戏功能分析游戏的主要功能分为三个部分:游戏界面、游戏规则和游戏控制。

3.1 游戏界面游戏的界面主要由几个部分组成:标题栏、游戏画面和控制按钮。

其中,游戏画面包括了地图、玩家、敌人以及游戏元素等。

控制按钮用来控制玩家移动或者其他相关操作。

3.2 游戏规则游戏的规则很简单,玩家需要通过操作控制按钮,使得玩家在地图上移动,同时避免敌人的攻击,并到达游戏终点。

3.3 游戏控制游戏的控制主要包括以下几个方面:1. 玩家移动控制;2. 敌人移动控制;3. 游戏胜负判断;4. 游戏关卡和等级控制。

4. 实现方法和关键技术本次小游戏的实现主要涉及以下几个技术和方法:1. Java GUI编程;2. Java面向对象编程;3. Java事件处理;4. 游戏逻辑设计。

5. 结论通过对小游戏Java课程设计的开发实现,学生对Java编程技术进一步深入学习和掌握,同时提高了学生的合作开发与沟通协作能力。

本次小游戏的开发实践活动是一次有效的教学方法,为以后的Java学习和实践工作奠定了坚实的基础。

java贪吃蛇课程设计报告总结

java贪吃蛇课程设计报告总结

课程设计报告:Java贪吃蛇游戏1. 背景贪吃蛇是一款经典的街机游戏,通过控制蛇的移动,吃掉食物,使蛇变得越来越长,直到触碰到边界或自己的身体为止。

该游戏在20世纪80年代流行起来,并成为了一种代表性的休闲娱乐方式。

贪吃蛇游戏可以提高玩家的反应能力、体力协调和空间感知能力。

本次课程设计旨在通过使用Java编程语言,设计实现一个简化版的贪吃蛇游戏,以加深学生对面向对象程序设计的理解和应用,并培养学生的逻辑思维能力和团队协作精神。

2. 分析2.1 游戏规则分析在贪吃蛇游戏中,玩家通过控制蛇的移动方向,使蛇吃到食物从而变长,直到游戏结束。

具体规则如下:•初始状态下,蛇由一个长度为3的身体组成,呈水平放置。

•蛇的移动方式为每个时间单位(通常为固定时间间隔)前进一格,移动方向由玩家通过键盘输入控制。

•蛇在吃到食物后,身体变长一节,并在地图上随机生成新的食物。

•蛇头碰到地图边界或自身身体的任意部分,游戏结束。

2.2 功能模块分析基于对游戏规则的分析,可以将贪吃蛇游戏的功能模块划分如下:•游戏初始化模块:初始化地图、蛇的初始位置和长度、生成初始食物等。

•用户输入模块:读取用户的键盘输入,控制蛇的移动方向。

•游戏逻辑模块:根据用户输入和游戏规则,更新蛇的位置、判断是否吃到食物或撞到障碍物等。

•地图绘制模块:将地图、蛇、食物等元素绘制到屏幕上。

•游戏循环模块:根据固定时间间隔循环执行游戏逻辑、用户输入和地图绘制等操作。

•游戏结束模块:在游戏结束时输出游戏得分等信息。

2.3 设计思路基于上述功能模块的分析,我设计了如下的实现思路:1.使用Java面向对象编程的思想,抽象出地图、蛇、食物等对象,并为其封装相应的属性和方法。

2.在游戏初始化模块中,创建地图对象、蛇对象,初始化位置和长度,并生成初始食物。

3.在用户输入模块中,利用Java的键盘事件监听机制,获取用户的方向输入,并通过调用蛇对象的移动方法实现控制蛇的移动方向。

打豆豆游戏java课程设计

打豆豆游戏java课程设计

打豆豆游戏 java课程设计一、课程目标知识目标:1. 让学生掌握Java基础语法,包括变量、数据类型、运算符、控制结构等。

2. 帮助学生理解面向对象编程思想,熟练运用类和对象。

3. 使学生掌握Java图形用户界面(GUI)编程,能使用Swing组件开发打豆豆游戏界面。

技能目标:1. 培养学生运用Java编程解决问题的能力,能独立设计、编写和调试打豆豆游戏代码。

2. 提高学生分析问题的能力,使他们能够根据游戏需求进行模块划分和功能实现。

3. 培养学生的团队协作能力,通过小组合作完成游戏开发。

情感态度价值观目标:1. 培养学生对编程的兴趣,激发他们主动探索新技术的热情。

2. 培养学生克服困难的勇气和信心,使他们勇于面对和解决问题。

3. 培养学生的创新精神,鼓励他们发挥想象力和创造力,设计和实现个性化的打豆豆游戏。

课程性质:本课程为实践性较强的Java课程设计,旨在让学生通过动手实践,掌握Java编程的基本知识和技能。

学生特点:学生已具备一定的Java基础,具有较强的学习能力和动手能力,但对实际项目的开发经验不足。

教学要求:注重理论与实践相结合,充分调动学生的积极性,引导他们主动探究和解决问题。

将课程目标分解为具体的学习成果,以便在教学设计和评估中予以体现。

二、教学内容1. Java基础语法复习:变量、数据类型、运算符、控制结构(条件语句、循环语句)。

2. 面向对象编程:类与对象、封装、继承、多态。

3. Java图形用户界面(GUI)编程:- Swing组件:JFrame、JButton、JPanel等。

- 事件处理:动作事件、鼠标事件、键盘事件。

4. 游戏设计:- 游戏需求分析:功能模块划分、界面设计。

- 游戏逻辑实现:豆豆移动、得分计算、游戏结束判定。

- 游戏界面绘制:使用Swing组件搭建游戏界面。

5. 项目实践:- 分组讨论:小组成员共同分析游戏需求,进行任务分配。

- 代码编写:根据分工,完成各自模块的代码编写。

java课程设计报告2048

java课程设计报告2048一、教学目标本课程旨在通过2048游戏的项目实践,让学生掌握Java编程的基本概念和方法。

知识目标包括理解Java的基本语法、数据结构、控制流程和类与对象的概念。

技能目标则是培养学生运用Java编程解决实际问题的能力,以及良好的编程习惯和团队协作能力。

情感态度价值观目标则是激发学生对计算机科学的兴趣,培养他们勇于探索和创新的科学精神。

二、教学内容教学内容以《Java编程思想》教材为基础,涵盖Java基本语法、数据类型、控制结构、面向对象编程、异常处理等核心知识点。

课程将从简单的Java程序设计开始,逐步深入到复杂的数据结构和算法,最后通过实现2048游戏,让学生运用所学知识解决实际问题。

三、教学方法本课程采用讲授法、案例分析法和实验法相结合的教学方法。

讲授法用于讲解Java的基本语法和概念,案例分析法用于分析实际编程问题,实验法用于让学生动手实践,巩固所学知识。

通过多样化的教学方法,激发学生的学习兴趣,提高他们的主动性和创新能力。

四、教学资源教学资源包括《Java编程思想》教材、相关参考书籍、网络资源以及实验设备。

教材为学生提供系统的学习材料,参考书籍用于拓展知识视野,网络资源提供丰富的学习资料和实践案例。

实验设备则为学生提供动手实践的机会,让他们在实践中加深对Java编程的理解。

五、教学评估本课程的评估方式包括平时表现、作业、考试和项目实践四个方面。

平时表现主要评估学生的课堂参与度和团队协作能力,作业则评估学生对知识点的理解和应用能力,考试则评估学生的知识掌握程度,项目实践则评估学生的实际编程能力和解决问题的能力。

评估方式将尽量客观、公正,全面反映学生的学习成果。

六、教学安排本课程的教学安排将紧凑合理,确保在有限的时间内完成教学任务。

课程将按照教材的章节顺序进行,每个章节都将有足够的时间进行讲解和实践。

同时,教学安排还会考虑学生的实际情况和需要,如学生的作息时间、兴趣爱好等,尽量使教学安排符合学生的需求。

JAVA游戏开发课程设计报告

《JAVA游戏开发》课程设计报告题目多线程端口扫描器姓名: 申伶俐学号:专业: 软件技术班级: 软件081计算机科学与技术系2009年6月目录1 设计任务与要求 ............................................................ 错误!未定义书签。

2 系统功能描述 ................................................................ 错误!未定义书签。

2.1功能概述................................................................ 错误!未定义书签。

2.2本系统要实现的功能............................................ 错误!未定义书签。

3 系统总体设计 ................................................................ 错误!未定义书签。

3.1总体分析................................................................ 错误!未定义书签。

3.2界面设置构思图.................................................... 错误!未定义书签。

3.3界面使用设置构思................................................ 错误!未定义书签。

3.4后台设计构思........................................................ 错误!未定义书签。

4 系统详细设计 ................................................................ 错误!未定义书签。

java_扫雷游戏课程设计报告(共5篇)

java_扫雷游戏课程设计报告(共5篇)第一篇:java_扫雷游戏课程设计报告一、设计任务与要求扫雷游戏的基本要求Windows 2000/XP系统提供的扫雷游戏是一个很有趣的游戏。

本章的课程设计使用Java语言编写一个与其类似的扫雷游戏。

具体要求如下:(1)扫雷游戏分为初级、中级和高级三个级别,扫雷英雄榜存储每个级别的最好成绩,即挖出全部的地雷且用时最少者。

单击游戏菜单可以选择“初级”、“中级”和“高级”或“查看英雄版”。

(2)选择级别后将出现相应级别的扫雷区域,这是用户使用鼠标左键单击雷区中任何一个方块便启动计时器。

(3)用户要揭开某个方块,可单击它。

若所揭方块下有泪,用户便输了这一局,若所揭方块下五雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。

(4)如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。

用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。

(5)扫雷胜利后(用时最少者),程序弹出保存成绩的对话框。

(6)用户可以选择标记疑问的方块,用可以勾选游戏菜单下的标记(或者用快捷键alt+G 然后M)即可,此时双击右键并可出现“?”标记。

另有颜色选项,当用户勾选此项时,游戏将以最低图像像素来显示。

(7)如果用户需要即使提示声,并可选中声音选项,此时将听到计时的卡塔声。

当用户点中雷时,将有爆炸声产生,胜利时,将有凯旋的旋律播放,此时企鹅出现欢悦表情。

二、需求分析1、扫雷游戏概述扫雷是一种具有迷惑性的对记忆和推理能力的简单测试,它是长久以来最受欢迎的Windows游戏之一。

游戏目标:找出空方块,同时避免触雷。

2、扫雷的操作方法游戏主区域由很多个方格组成。

使用鼠标随机点击一个方格,方格即被打开并显示出方格中的数字;方格中数字则表示其周围的8个方格隐藏了几颗雷;如果点开的格子为空白格,即其周围有0颗雷,则其周围格子自动打开。

双手贪吃蛇+Java程序设计+课程设计报告

课题名称:双手贪吃蛇摘要:“贪吃蛇”游戏是一个经典的游戏,它因操作简单、娱乐性强而广受欢迎,而“双手贪吃蛇”是基于经典的创新。

此程序基于Java技术,利用eclipse软件设计,开发了一个操作简单、界面简洁、功能较齐全的“双手贪吃蛇”游戏。

整个游戏程序由游戏界面设置(即绘图)、两条贪吃蛇运动和食物放置设置、提示框设置三大模块来设计,实现了游戏的开始和结束。

通过本游戏的开发,达到学习Java技术和熟悉软件开发流程的目的。

关键词:贪吃蛇;双手贪吃蛇;Java小游戏1 课题背景及意义“双手贪吃蛇”是经典游戏的一个小小创新,它的设计比较复杂,涉及面广、牵涉方面多,对于初学者来说是有一定难度的挑战。

在这个游戏设计中,涉及到图形界面的实现与更新、键盘监听、数组的使用与记录、多线程的应用,还应用到类的继承机制。

在设计开发过程中,需要处理好各个类之间的继承关系,协调好各个模块之间的逻辑依赖关系。

本次课程设计的目的在于学习Java程序设计基本技术,熟悉“双手贪吃蛇”的需求,熟悉项目开发的完整过程。

学会怎样进行一个项目的需求分析、概要设计、详细设计等开发过程,培养起初步的项目分析能力和程序设计能力。

2 需求分析(1)游戏主界面:游戏主界面框架包括游戏图形面板、游戏帮助信息区域。

(2)两条贪吃蛇运动:游戏开始时两条蛇有个初始速度,键盘的W、S、A、D控制黑蛇的运动方向,键盘的上下左右控制红蛇的运动方向。

(3)食物放置:游戏开始时,食物在游戏面板中随机出现,蛇吃到食物后,食物再次随机出现。

(4)蛇身增加:任意一条蛇吃到食物后,增加一个单位的蛇身。

(5)分数增加:分数初始值为0,任意一条蛇吃到一个食物,分数加10。

(6)游戏结束:任意一条蛇碰到游戏面板边界后,游戏结束。

(7)输入框、提示框显示:游戏结束后,弹出输入框输入玩家名称,确定后弹出游戏排行榜,再次确定后弹出玩家分数。

3 系统设计与实现(一)游戏主界面建立一个类Yard继承JFrame,建立三个ImageIcon(icon/icon1/icon2)分别放置黑蛇、红蛇和食物的图标,建立string2放置帮助信息文字。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档