搜档网
当前位置:搜档网 › java课程设计-俄罗斯方块.doc

java课程设计-俄罗斯方块.doc

java课程设计-俄罗斯方块.doc
java课程设计-俄罗斯方块.doc

Java课程设计报告

2010 / 2011 学年第二学期

项目名称:俄罗斯方块游戏

项目负责人:李俊杰学号:09030317

同组者:田俊学号:09030325

同组者:殷崧健学号:09030335

指导教师:费贤举班级:09 软件

课程设计时间:2011年 6 月 21 日-2011年 7 月 7 日

课程设计地点:秋白楼 B705

常州工学院计算机信息工程学院

2011年 7 月 7 日

目录

1.系概述???????????? 3 2.目划以及小人分工??? 4 3.系流程??????????? 5 4.系操作界面??????????8 5.????????????9 6.用手册与游帮助???????18 7.划????????????20 8.改意????????????22 9.程心得体会????????23 10.参考籍及料????????24

系统概述

1.1 现状分析

在个人电脑日益普及的今天,一些有趣的桌面游戏已经成为人们

在使用计算机进行工作学习之余休闲娱乐的首选,而俄罗斯方块游戏是人们最熟悉的小游戏之一,它以其趣味性强,易上手等诸多特点得到了大众认可,因此开发此游戏软件可满足人们的一些娱乐需求。

此俄罗斯方块游戏可以为用户提供一个可在普通个人电脑上运行的,界面美观的,易于控制的俄罗斯方块游戏。

1.2 项目要求

俄罗斯方块是一款适合大众的游戏软件,它适合不同年龄的人玩。本软件实现的基本功能如下:

游戏区:玩家可以在游戏区中堆积方块,并能够在游戏过程中随时了解得分情况和下一个将要出现方块的提示。

游戏控制:玩家可以通过游戏控制功能来控制游戏开始,暂停,结束游戏,游戏难度的设置以及音效控制。

玩家游戏信息存储及删除:玩家的得分在前五名时,将会记录在排行榜上,同时可为玩家清空排行榜。

1. 3系统模块结构图

依据需求分析结果,俄罗斯方块游戏可以分为三个模块:游戏区、游戏控制区、数据操作区。系统模块结构如图:

游戏区

俄罗斯方块游游戏控制

数据操作

项目计划书以及小组人员分工

2.1 项目开发计划书

名称时间工作内容

1 天说明如何着手设计的方法和设计任

下达设计任务

务的解释说明。

项目组在组长的组织下选题、分析,搜集、分析资料及档案 2 天识别实体,完成《项目开发计划书》

及小组人员分工。

2 天完成系统层次图、用户界面设计、

设计

数据库表设计,完成《设计说明书》程序编写和测试7 天根据方案进行现场编程和调试

编写设计文档 2 天

完成软件测试以及《用户操作手册

的编写》

文档提交、答辩 1 天提交文档,进行答辩

2.2 小组人员分工表

姓名任务分配

组长李俊杰游戏界面设计,游戏控制按钮功能实

现,文档编写等。

组员田俊游戏区操作的实现,显示操作结果以及

大部分游戏算法的编写。

组员殷崧健数据库的设计与运行,方块构造与变

形,以及部分算法的编写。

系统流程图

3. 1游戏区模块

该模块为玩家提供主题游戏功能,能够处理玩家的各种操作,为

玩家提供下一个方块的提示、当前等级、当前分数的显示。该模块应包括三个字功能模块:创建游戏区、处理玩家游戏操作区、游戏显示区。模块功能树如图:

创建游戏

处理玩家

游戏区模

游戏操作

游戏显示

3. 2 游戏控制区模块

该模块为玩家提供游戏控制功能,包括开始游戏、暂停/继续游戏、结束游戏、等级设置。玩家可自行设定游戏等级,主要提供10 种级别,级别越高,游戏速度越快,难度越大。模块功能树如图:

开始游戏

暂停 / 继续游

游戏控制区模结束游戏

等级设置

音效开关

3. 3 数据操作区模块

该模块为玩家提供游戏、玩家信息存储与查询功能。包括排行榜

信息录入、排行榜查询、排行榜清空、游戏帮助,四个模块。模

块功能树如图:

排行榜信息录

排行榜查询数据操作区模

排行榜清空

游戏帮助3. 4 系统流程描述

此流程图为俄罗斯方块游戏系统流程描述。

开始

随机选择方查询排行榜设置初始级别块类型

清空排行榜创建游戏区

显示下一个

方块

查看游戏帮助游戏开局

查看制作团队

是否到达

顶部显示游戏结果

方块下落一是

输入玩家姓名

是否录入

数据库处理玩家操

作输出排行榜

否是

是否到达

底部

结束

系统操作界面

4.1 游戏打开界面

4.2游戏运行界面

详细设计类一:控制面板类

(1)类定义: class ControlPanel

(2)功能描述:界面设计应遵循简介美观方便易用的基本原则。

(3)设计方法:

方法①: fanning 方法

方法定义: public void fanning()

功能描述:这个方法就是要保证在放大和缩小程序实现窗口大小的时候,其中的格子也会随之改变,也就是我们经常说的最大化最小化,当窗口发生变化时,方块自动调整大小与之相匹配。

方法②: reset 方法

方法定义: public void reset()

功能描述:这个就是将游戏界面重置,将游戏界面回到初始状

态,这个方法主要是通过将窗口中的着色小方块全部消除颜色,然后再重新去给窗口着色,即着上背景色,给玩家看上去也就是被刷新了。

(4)设计描述:

① controlPanel 面板中包含tipPanel, InfoPanel, buttonPanel 子

面板,分别为图形界面面板,信息面板,按钮面板

②图形显示面板设计为BorderLayout 布局样式 .其中添加

tipPanel 面板居中 (以显示下一个俄罗斯方块样式)

③信息面板设计为 4 行 1 列式的 GridLayout 网格状布局 ,并且添

加当前等级 ,显示当前等级文本域 ,当前分数 ,显示当前分数文本

④按钮面板设计为 5 行 1 列式的 GridLayout 网格状布局,并且

添加开始游戏 , 暂停 /继续 ,结束,加等级,减等级五个按钮

⑤Bar 栏中添加五个菜单按钮,分别为游戏菜单,控制菜单,排

行榜菜单,音效菜单,关于菜单。

⑥游戏菜单里有新游戏,退出两个选项卡,窗口样式菜单里有

windows,motif,ment 这 3 种样式选项卡,信息菜单里面有作

者,帮助两个选项卡

面板设计效果图如下:

类二:画布类

(1)类定义: class GameCanvas

(2)功能描述:在游戏区显示方块

(3)设计方法:

方法①: paintComponent方法

方法定义 public void paintComponent(Graphics g)

功能描述;其中 box 就是表示预显示框,然后检查显示框中每个小格子是否需要着色,如果需要着色,则着上方块得颜色,不需要着色的则着上背景颜色,一共有 16 个小格子构成了一个预显示块,共需要检测 16 次,其实当中和实现游戏中的程序有着共同点。

方法②: removeLine 方法

方法定义: public void removeLine(int row)

功能描述:这个就是实现如何将行消除的,其实就是在判断了该行该消除的时候将上面的方块都向下平移一格,这样在实现程序界面也就给玩家是消去一行的视觉效果。

类三:方块类

(1)类定义: class RussiaBlock

(2)功能描述:七种类型方块的父类,定义了所有类型方块的共同特征和行为。

随机产生一个数

1 2 3 4 5 6 7

一字形Z 字形反 Z 形L 字形反 L 形倒 T 形田字型(3)设计方法:

方法①: run 方法

方法定义: public void run()

功能描述:实现方块的运行,下落。

方法②: moveTo 方法

方法定义: public synchronized boolean moveTo()

功能描述:将当前画移动到newRow/ newCol所指定的位置。

方法③: isMoveable 方法

方法定义: private boolean isMoveable()

功能描述:判定当前块是否能被边界、其他方块挡住以及不能

移动的情况。

方法④: turnNext 方法

方法定义: public void turnNext()

功能描述:实现方块的旋转。

方法⑤: turnTo 方法

方法定义: private synchronized boolean turnTo()

功能描述:将当前块变成newStyle 所指定的块样式。

方法⑥: isTurnable 方法

方法定义: private boolean isTurnable()

功能描述:判定当前块是否能变成newStyle 所指定的块样式。

方法⑦: erase 方法

方法定义: private void erase()

功能描述:将当前块从画布的对应位置移除。

方法⑧: display 方法

方法定义: private void display()

功能描述:实现重画画布的时候显示当前块。

类四:主游戏类

(1)类定义: RussiaBlocksGame

(2)功能描述:游戏主类,负责游戏的全局控制。

(3)设计方法:

方法①: datasort 方法

方法定义: public void datasort()

功能描述:实现连接数据库,并对数据库中所有数据进行排序

输出。

方法②: reportGameOver方法

方法定义: private void reportGameOver()

功能描述:实现输出游戏总分,输入用户姓名,录入数据库并

显示最新排行。

方法③: datasortdelete 方法

方法定义: public void datasortdelete()

功能描述:实现排行榜清空。

方法④: checkFullLine方法

方法定义: public void checkFullLine()

功能描述:这个是表示的清除需要消除的行的算法,只需要对行中的小方块进行判断,判断是否都已经着色,如果都着色了说明改行是要消除的,而且还需要进行加分措施,在进行多行消除的时候,可以给玩家更多的奖励,这也符合俄罗斯方块的游戏股则。

方法⑤: play 方法

方法: private void play()

功能实现:实现游戏开始,同时在游戏的开始时,方块随即从

顶端的任何位置落下。

方法⑥: getCurLevelScore方法

方法定义: public int getCurLevelScore()

功能描述:实现获得每个等级的分数

方法⑦: setLevel 方法

方法定义: public void setLevel(int level)

功能描述:进行等级的手动调节

方法⑧: isGameOver 方法

方法定义: private boolean isGameOver()

功能描述:该方法是判断游戏是否该结束了,只需要判断窗口

中的最顶端那一行中是否有方块,同时也要判断最底端的是否也

有,如果都有程序会自动弹出“游戏结束”的对话框,然后进行数据的记录,存入数据库,写入排行榜,可以供玩家进行参考,判断最底端的是因为,在游戏开始的时候直接结束游戏也会弹出对话框,为了避免这个问题,加一个判断对的条件,基本可以实现原来计划的功能。

方法⑨: levelUpdate方法

方法定义: public void levelUpdate()

功能描述:这是更新等级的函数,一个是通过分数的判断,在程序中定义了一个本级得分,然后当本级得分达到一个分数的时

候,就可以进入下一个等级,同时根据等级的提高,之前定义的下落速度也会提高,同时减去升级需要的分数,也就可以用作下一次升级的判断。

(4)设计描述:

①窗体设计

窗体大小:(300 ,400 ),默认居中显示,代码如下:Dimension scrSize=Toolkit.getDefaultToolkit().getScreenSize();

setLocation((scrSize.width-getSize().width)/2,(scrSize.height-get

Size().height)/2);

添加 windows 窗口事件:

addWindowListener( new WindowAdapter()

{

public void windowClosing(WindowEvent event)

{

System.exit(0);

}

} );

窗体名称为:俄罗斯方块游戏。

②菜单设计

菜单条设计:包括游戏菜单,控制菜单,排行榜菜单,音效菜单,关于菜单。

游戏菜单:包括重新游戏,加等级,减等级,退出四个菜单项。

控制菜单:包括暂停,继续,结束三个菜单项。

排行榜菜单:包括排行榜显示,清除排行榜数据。

音效菜单:包括音效的开与音效的关。

关于菜单:包括制作人,与帮助。

以菜单项为例

gameMenu = new JMenu("游戏");

newGameItem = new JMenuItem("重新游戏");

turnHardItem = new JMenuItem("加等级");

turnEasyItem = new JMenuItem("减等级");

exitItem = new JMenuItem("退出");

gameMenu.add(newGameItem);

gameMenu.add(turnHardItem);

gameMenu.add(turnEasyItem);

gameMenu.add(exitItem);

③添加背景音乐方法

public void Music ()

{

String music = "background.wav";

final AudioClip clip= Applet.newAudioClip(getClass().getResource(music));

clip.play();

}

通过调用 Music ()来实现背景音乐播放。

类五:虚拟单个方格类类

(1)类定义: RussiaBlocksGame

(2)功能描述:控制方格的颜色。

(3)设计方法:

方法: setColor 方法

方法定义: public void setColor ()

功能描述:对有标记的方块进行着色

用户手册与游戏帮助

控制区:玩家在界面上可以看到开始游戏的按钮,点击该按钮,开始游戏,控制区和界面上都有暂停,继续的按钮,按下暂停则游戏暂停,并且界面上的按钮变成继续的字样,同理按下继续,游戏继续,用户界面上面还有等级的增加和降低,直接点击按钮就可以实现对等级的操作

游戏菜单区:新游戏:如果玩家在结束了游戏或者在游戏中向开

始进行新的游戏,则可以点击该按钮,同时可以进行等级的设置,如果玩家不想继续玩得话,直接点击结束按钮结束游戏,并退出窗口。

控制菜单:暂停,继续,退出游戏的功能都和控制区一样的效果排行榜菜单:可以查看游戏的最高分的排行榜,可以准确地定位自己分数的档次,同时也可以对排行榜进行清空,也就是排行榜

中没有了数据了。

音效菜单:可以对游戏过程中的背景音乐和游戏中的声音进行开

关,玩家用起来非常方便

关于菜单:该菜单包含两个模块,一个是游戏的操作的简介,方

向键的左,下,右就是游戏中的操作方法,方向键上则是对图形

的反转变化,空格键则是一键到底的快捷键。第二个模块则是制

作人,即是该游戏的制作人的说明。

游戏规则

游戏软件随即不断的下落其中方块中的一种,玩家在方块落到底

部之前将方块尽量整齐的摆放好,以便能够对满一行进行消除,玩家可以旋转,左右移动方块,以选择最佳的摆放位置和方式,也可以加快下落的速度,甚至可以直接落到底部,以便节省游戏的时间。当方块落到底部的时候,就不能进行操作的,此时会在顶部出现另一个方块。在堆放方块的时候,如果一行堆满的话,则进行消行,上面的方块自动的向下移动一行。消除一行可以得到 100 分,同时消除多行的时候可以进行更多的奖励,累计达到 2000 分的时候可以自动提高游戏的等级,当游戏到达最高等级的时候就不再进行等级的提高。同时在游戏的同时也可以听听背景音乐,放松心情。在游戏的开始和结束的时候都可以对排行榜进行访问,可以对自己的游戏水平进行一个正确的评价。

JAVA课程设计 时钟

辽宁工业大学 JA V A程序设计课程设计(论文)题目:时钟 院(系):软件学院 专业班级:软件技术班 学号: 学生姓名: 指导教师:丁宝柱 教师职称:助教 起止时间: 2009.12.1至2009.12.16

程序设计专题(报告)任务及评语

目录 第1章课程设计的目的与要求 (1) 1.1 课程设计目的 (1) 1.2 课程设计的实验环境 (1) 1.3 课程设计的预备知识 (1) 1.4 课程设计要求 (1) 第2章课程设计内容 (2) 2.1课程设计主要内容 (2) 2.2概要设计 (2) 2.2.1自定义类说明 (2) 2.3详细设计 (3) 2.4测试分析 (16) 2.4.1程序运行情况 (16) 2.4.2程序异常处理 (16) 第3章课程设计总结 (17) 参考资料18

第1章课程设计的目的与要求 1.1 课程设计目的 《JA V A程序设计》是计算机相关专业的必修专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。本课程的程序设计专题实际是计算机相关专业学生学习完《JAVA程序设计》课程后,进行的一次全面的综合训练,JA V A程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。 1.2 课程设计的实验环境 硬件要求能运行Windows 9.X操作系统的微机系统。JAVA程序设计语言及相应的集成开发环境,J2SDK和ECLIPSE开发工具。 1.3 课程设计的预备知识 熟悉JAVA语言及ECLIPSE开发工具。 1.4 课程设计要求 按课程设计指导书提供的课题,要求学生在自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个项目解决一类问题。要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,能够进行简单分析和判断;能编写出具有良好风格的程序;掌握JA V A程序设计的基本技能和面向对象的概念和方法;了解多线程、安全和网络等编程技术。同时培养学生进行分析问题、解决问题的能力;培养学生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。

java记事本课程设计论文附源码

设计题目:记事本课程设计 专业:电子信息科学与技术 班级:电子1202班 学号:20121210606 姓名:王鹏 2015 年7月

XXX学院本科学生课程设计任务书

摘要 目前,很多新的技术领域都涉及到了Java语言,Java语言是面向对象编程,并涉及到网络、多线程等重要的基础知识,因此Java语言也是学习面向对象编程和网络编程的首选语言。此次课程设计主要通过编写一个简单的记事本程序使我们深入理解并实践在本课程中所学的有关JAVA程序设计方面的语言基础、异常处理、事件处理、小应用程序以及图形用户界面设计等内容。此简易记事本程序,使用Java程序编写,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切等功能。该程序主要用到了Java swing和事件监听等。 关键词记事本程序,java语言,Java swing

目录 摘要 (1) 1 需求分析 (3) 1.1需求分析 (3) 1.2功能设计 (3) 2 概要分析 (4) 2.1概要设计思想 (4) 2.2程序运行界面 (4) 2.3程序模块说明 (4) 2.4流程图 (5) 2.5程序相关说明 (6) 3 程序详细设计与分析 (8) 3.1构建菜单栏及其下拉菜单 (8) 3.2“文件”菜单操作的事件监听 (8) 3.3“编辑”、“格式”等菜单的事件监听 (10) 3.4异常处理 (11) 4 测试分析 (12) 5 源程序清单 (15) 结论 (22) 参考文献 (23)

1 需求分析 1.1需求分析 现在网络上各种文档编辑器数不胜数,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad++,win32pad ,SkimEdit,UniRed, xint 。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的记事本程序。 1.2功能设计 本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面: 1、菜单中有“文件”,“编辑”,“格式”,“查看”,“帮助”五个主菜单。 2、“文件”有“新建”“打开”“保存”“另存为”“退出”五个子菜单:分别用于新建文件,打开文件,保存文件,另存文件,退出记事本。 3、“编辑”中有“撤销”“剪切”“复制”“粘贴”“全选”“时间/日期”六个字菜单:用于撤销操作,剪切文字,复制文字,粘贴文字。全部选择,插入日期、时间。 4、“格式”菜单中有“自动换行”和“字体”两个子菜单。 5、“查看”菜单只是显示状态栏。 6、“帮助”菜单中只有“关于记事本”子菜单,主要用于显示该程序的名字,版本等信息。

扫雷的课程设计报告

西安文理学院信息工程学院课程设计报告 设计名称:数据结构课程设计 设计题目:实现一个N*M的扫雷游戏 学生学号:1402130407 专业班级:软件13级四班 学生姓名:樊秀琳 学生成绩: 指导教师(职称):谢巧玲(讲师) 课题工作时间:2015.6.22 至2015.7.3

说明: 1、报告中的任务书、进度表由指导教师在课程设计开始前填写并发给每个 学生。 2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩。 3、所有学生必须参加课程设计的答辩环节,凡不参加答辩者,其成绩一律 按不及格处理。答辩由指导教师实施。 4、报告正文字数一般应不少于3000字,也可由指导教师根据本门综合设 计的情况另行规定。 5、平时表现成绩低于6分的学生,取消答辩资格,其本项综合设计成绩按 不及格处理。

信息工程学院课程设计任务书 指导教师:院长: 日期:2015年6月22日

信息工程学院课程设计进度安排表 学生姓名:樊秀琳学号:1402130407 专业:软件工程班级:13级四班 指导教师签名: 2014年6月22日

成绩评定表 学生姓名:樊秀琳学号:1402130407 专业:软件工程班级:13级四班

摘要 摘要: 扫雷游戏是Windows操作系统自带的一款小游戏,在过去的几年里,Windows操作系统历经数次换代更新,变得越来越庞大、复杂,功能也越来越强大,但是这款小游戏依然保持原来的容貌,可见这款小游戏受到越来越多人的喜爱。扫雷游戏是比较经典的一款小游戏,实现它的方法很多,可以用很多不同算法设计和语言实现,如C,C++,VB,JAVA等。我利用eclipse编写了与它功能相似的扫雷游戏,寓学于乐。 程序的功能是随机生成地雷数,通过鼠标操作玩游戏,不接受键盘,按任意键结束程序。单击屏幕上的笑脸可以重新开始游戏。所有地雷标出后胜利,当鼠标左键单击到地雷时提示游戏失败。其功能类似于Windows操作系统自带的扫雷游戏。论文首先介绍了进行该游戏课程设计的目的,然后是任务描述和设计的相关要求,最后是最重要的需求分析和设计方案。重点介绍了在游戏过程中各事件的处理,其中又以鼠标事件和清除未靠近地雷区方块这两方面最为最要,鼠标事件是利用鼠标所发出的信息了解用户的意图,进而做出相对应的动作。清除未靠近地雷区的方块较为复杂。 关键词:算法设计;事件;Eclipse

职工管理系统java课程设计简单实现

目录 一、绪论 (1) 1.1关键技术介绍 (1) 1.1.1JAVA技术 (1) 1.1.2SQL数据库 (1) 二、需求分析 (2) 三、系统概要设计: (3) 3.1问题描述 (3) 3.2要求 (3) 3.3数据库设计 (3) 四、系统详细设计 (5) 4.1新员工信息录入 (5) 4.2显示员工信息 (7) 4.3修改员工信息 (8) 4.4查询员工信息 (10) 4.5删除员工信息 (13) 4.6员工信息排序 (15) 4.7员工信息统计 (16) 4.8注销 (17) 五、系统测试 (18) 5.1系统登录 (18) 5.2系统主界面.................................. 错误!未定义书签。 5.3新员工信息录入.............................. 错误!未定义书签。 5.4显示员工信息................................ 错误!未定义书签。 5.5修改员工信息................................ 错误!未定义书签。 5.6查询员工信息................................ 错误!未定义书签。 5.7删除员工信息................................ 错误!未定义书签。 5.8排列系统.................................... 错误!未定义书签。 5.9统计界面.................................... 错误!未定义书签。

5.10注销....................................... 错误!未定义书签。 六、总结 (19) 八、附录.......................................... 错误!未定义书签。

学生信息管理系统java课程设计含源代码完整版

学生信息管理系统j a v a 课程设计含源代码 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

JAVA程序设计课程设计报告 课题: 学生信息管理系统 姓名: 学号: 同组姓名: 专业班级: 指导教师: 1 2 1、功能模块划分 (3) 2、数据库结构描述 (4) 3、系统详细设计文档 (6) 4、各个模块的实现方法描述 (9) 5、测试数据及期望结果 (11)

一、系统描述 1、需求实现的功能 、录入学生基本信息的功能 学生基本信息主要包括:学号、姓名、年龄、出生地、专业、班级总学分,在插入时,如果数据库已经存在该学号,则不能再插入该学号。 、修改学生基本信息的功能 在管理员模式下,只要在表格中选中某个学生,就可以对该学生信息进行修改。 、查询学生基本信息的功能 可使用“姓名”对已存有的学生资料进行查询。 、删除学生基本信息的功能 在管理员模式下,只要选择表格中的某个学生,就可以删除该学生。 、用户登陆 用不同的登录权限可以进入不同的后台界面,从而实现权限操作。 、用户登陆信息设置 可以修改用户登陆密码 2、设计目的 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的

JAVA课程设计银行管理系统

大连科技学院java程序设计课程设计(B) 题目银行取款管理系统 学生姓名姚伟奇专业班级计算机(Z)13-1 指导教师李红职称讲师 所在单位信息科学系软件工程教研室 教学部主任王立娟 完成日期 2016年9月30日 课程设计报告单

综合评定: (优、良、中、及格、不及格)指导教师签字:2016年9月30日《java程序设计课程设计(B)》任务书 一、课程设计任务及要求: 任务:针对小型信息管理系统或若干综合性设计题目,选择一种软件开发模型,完成从需求分析、系统设计、系统实现,软件测试的全过程。 要求: (1) 根据软件系统开发的一般原则,完成相应系统的功能设计,完成主要功能模块的程序实现并进行测试训练,给出代码运行结果和相应的设计文档。可以分组进行,但所有学生必须经历整个系统的开发全过程,以便加深对系统开发全过程的认识。 (2)提交课程设计报告。 (3)指标: 要求完成课程设计报告3000字以上(约二十页);完成所设计的题目,设计题目的语句行数的和在200行语句以上。 二、工作量 2周(10个工作日)时间 三、计划安排 第1个工作日:查找相关资料、书籍,阅读示例文档,选择题目。 第2个工作日-第4个工作日:设计程序结构、模块图。 第5个工作日-第9个工作日:完成程序的编码,并且自己调试、测试。穿插进行课程设计报告的撰写。 第10个工作日:上交课程设计报告,由教师检查软件测试效果、检查课程设计报告,给出学生成绩。

指导教师签字:2016年9月19日

目录 题目:.................................................... 错误!未定义书签。 1.需求分析............................................ 错误!未定义书签。 2.概要设计............................................ 错误!未定义书签。 3.详细设计............................................ 错误!未定义书签。 4.编码................................................ 错误!未定义书签。 5.调试分析............................................ 错误!未定义书签。 6.测试结果及运行效果.................................. 错误!未定义书签。 7.系统开发所用到的技术................................ 错误!未定义书签。 8.课程设计总结........................................ 错误!未定义书签。参考文献................................................. 错误!未定义书签。5 附录全部代码............................................. 错误!未定义书签。

java课程设计方案

JAVA课程设计方案 1.设计目的与任务 本课程设计所要求达到的目的和任务:通过Java程序设计的一些重要理论基础来实现“写字留痕”的“日历”和“记事本”的双重功能。并通过此次课程设计的训练,使学生巩固和加深对Java这门课程的理解,通过利用所学到的计算科学的理论知识,提高解决实际问题的能力,增强运算、编程和使用技术资料的技能,通过实际问题的分析设计、编程和调试,掌握应用软件的分析方法和工程设计方法,能正确阐述设计和实验结果。通过这次课程设计,培养实事求是、认真、严谨的科学态度和刻苦钻研不断创新的精神,逐步建立正确的全局观念。 设计方案 3.1总体设计 (1)问题定义:创建写字留痕,实现对某日期的事情进行记录这主要功能,并能显示设置的图片,增加美观。 (2)问题分析:通过对“写字留痕”这一题材的分析,我需要四个类来实现其“日历”和“记事本”这两大功能。通过主类N2创建动写字留痕软件的主窗口,该类含有main方法,程序从该类开始执行。再用余下YearMonth 、MonthPane类来显示并改变日期和实现记事本的功能。而ImagePanel类用来显示图片,Music类用来实现音乐的播放控制。 (3)研究意义:通过本次课程设计,我们掌握了Java语言的基本运用,提高了理论结合实际的能力。 3.2设计要求 (1)日记本使用Java语言开发设计。课程的基本功能包括万年历、记事本和辅助功能三个部分。 (2)万年历部分由微调器确定年月,由一组文本框显示日历。年月可选择数据符合逻辑,默认为当前日期。 (3)月历显示应该符合查看习惯,如星期六和星期日分别用不同颜色表示,当日可用特别的字号和颜色 (4)记事本区,记事本容按年月日记录且保存。 (5)微调器应该进行事件设置,以及即时地显示该年月的月历;日期文本框可监听鼠标事件,当单击任何一个日期时,若该日有记事容,则在日记本中显示该日期的记录文字;若该日无记录,记事区保持空白。 (6)日记本应该是开放的,容可按日期增减,保存应即时,删除需谨慎删除记录时,应进行对话框询问确定。

学生信息管理系统java课程设计(含源代码)

JAVA程序设计课程设计报告 课题: 学生信息管理系统 姓名: 学号: 同组姓名: 专业班级: 指导教师: 设计时间: 评阅意见: 评定成绩:

目录 一、系统描述 (2) 1、需要实现的功能 (3) 2、设计目的 (3) 二、分析与设计 (3) 1、功能模块划分 (3) 2、数据库结构描述 (4) 3、系统详细设计文档 (6) 4、各个模块的实现方法描述 (9) 5、测试数据及期望结果 (11) 三、系统测试 (16) 四、心得体会 (23) 五、参考文献 (24) 六、附录 (24)

一、系统描述 1、需求实现的功能 、录入学生基本信息的功能 学生基本信息主要包括:学号、姓名、年龄、出生地、专业、班级总学分,在插入时,如果数据库已经存在该学号,则不能再插入该学号。 、修改学生基本信息的功能 在管理员模式下,只要在表格中选中某个学生,就可以对该学生信息进行修改。 、查询学生基本信息的功能 可使用“姓名”对已存有的学生资料进行查询。 、删除学生基本信息的功能 在管理员模式下,只要选择表格中的某个学生,就可以删除该学生。 、用户登陆 用不同的登录权限可以进入不同的后台界面,从而实现权限操作。 、用户登陆信息设置 可以修改用户登陆密码 2、设计目的 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟,

Java课程设计电子版

2016届课程设计 《Java程序设计》 课程设计说明书 学生姓 学号 所属学院信息工程学院 专业计算机科学与技术 班级 指导教师 教师职称 塔里木大学教务处制

塔里木大学课程设计任务书课程名称: Java程序设计 课程所属教研室:计算机系指导教师: 学号学生姓名(专业)班级设计题目软件代码开发技术 实习技术内容(1)安装Java环境及环境变量配置。 (2)熟练掌握Java类、对象的概念。 (3)熟练掌握Java封装、继承和多态的概念。 (4)熟练掌握Java重写和重载的概念,并实现重写和重载。(5)熟练掌握Java程序的编写方法和思路。 (6)完成课设论文。 实习要求(1)通过课设加深对Java技术的学习与掌握。 (2)训练运用Java技术完成简单程序的开发和设计。(3)训练运用Java技术完成对数据库的连接与访问。(4)掌握课设论文的撰写要求与技巧。 参考资料JAVA程序设计基础教程人民邮电大学出版社。上网(internet)查资料,查程序,模仿程序。 从零到学java程序设计北京大学出版社。 周次第一周第二周 应完成内容根据所选择题目,查阅资料配置 java开发环境及tomcat web 服务 器。完成对Java程序的设计、修改 及调试。 运用Java技术完成对数据库的连接与 访问,同时按要求完成课设论文。 指导教师签字 教研室主任签字

目录 1.输出如下图形: (4) 2.打印下面图形 (5) 3.打印下面图形 (6) 4.编程计算1+2+3+......+100的和: (8) 5. 编程计算2+4+6+......+100的和:. (9) 6. 编程计算1+3+5+......+99的和:. (10) 7. 编程计算1!+2!+3!+4!+5!的和: (11) 8. 编程计算1!+2!+3!+4!+5! +6!+7!+8!+9!+10!的和: (12) 9.实现打印100—1000之内的水仙花数(所谓水仙花数是一个三位整数,它的各个数位的立方和等于这个数本身)。 (13) 10.编程输出1-100中的所有素数的程序: (14) 11.假设有一个父类Person,其子类是Student,请你设计父类的属性和方法,然后再设计子类的属性和方法,要求子类重写父类的部分方法,然后实现多态: (15) 12.一个动物类包括猫和狗,但是它们有不同的叫声,请你利用java多态性机制设计出合理的解决方案。 (16) 13.编程打印九九乘法表 (17) 14.将123反序输出321: (18) 15.编写实现a,b两个数交换的程序: (19) 16. 编写实现a,b,c三个数从小到大排序的程序 (20) 17.什么是继承?继承机制为面向对象程序设计带来哪些好处? (22) 18.什么是类?什么是对象?它们之间的关系是怎样的? (22) 19.试写出一个语句创建一个名为myPackage的包,这个语句应该放在程序的什么位置? 22 20.根据你的理解,请说明java中重载与重写的异同。 (22)

Java课程设计实验报告及全部源码流程图

课程设计 一、实验目的 1.加深对课堂讲授内容的理解,掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及软件编程、调试等能力,掌握面向对象的编程思想及Java语言程序设计的规律与技巧,为进一步学习web应用开发及今后从事专业工作打下基础。 2. 使用本学期学习的Java SE技术(也可以使用课堂教学中没有学习过的Java技术,但是应当以Java SE技术为主)完成多功能日历GUI程序的设计,使之具有如下基本功能:一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。 3.在完成基本功能的基础上发挥自己的想象力与创造力,使程序凸显出与众不同的特点与功能,形成本小组的特性色。 二、实验要求 1.问题描述准确、规范。 2.程序结构合理,调试数据准确、有代表性.。 3.界面布局整齐,人机交互方便。 4.输出结果正确。 5.正确撰写实验报告。 三、实验内容 编写一个GUI程序实现日历的功能。一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期以及当前农历,可以为每页日历选择背景图片。可以实现显示时钟,时钟能进行整点报

时。可以实现备忘记事功能,能在每天添加、修改、删除记事等操作。 四、实验步骤 1.在上机实验前,小组成员进行选题讨论,确定小组感兴趣而又伸缩性强的题目多功能日历。 2.在第一次上机实验时讨论分工,分工明确之后,分头合作进行。 3.各成员完成自己的任务后,最后进行统筹合并,以及程序最后的优化。 4. 根据实验结果,写出合肥工业大学实验报告。实验报告应当包括:实验内容,程序流程图,类结构,程序清单,运行结果,以及通过上机取得的经验。 5.详细的上机实验步骤见任务分工及程序设计进度表。 五、实验结果 经过小组成员的共同努力,最终我们小组设计的多功能日历程序能够实现实验的基本要求——一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。另外,在完成基本要求的基础上,我们增添了显示农历、显示时钟、添加备忘录、修改备忘录等功能。整体程序运行流畅、功能齐全、符合操作习惯。 下面是程序运行效果截图: 日历主界面(可以实现每个月的日历,可以按年或按月前后翻动,能够显示当前日期,并能够选择背景图片):

C程序课程设计报告(扫雷游戏)

C程序设计 扫雷游戏 一、设计题目:扫雷游戏 二、设计目的 1.使学生更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。 2.培养学生综合运用所学知识独立完成课题的能力。 3.培养学生勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。 4.提高学生对工作认真负责、一丝不苟,对同学团结友爱,协作攻关的基

本素质。 5.培养学生从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。 6.对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力进行考核。 三、设计要求 1.汪洋和孔维亮组成设计小组。小组成员分工协作完成。要求每个成员有自己相对独立的模块,同时要了解其他组员完成的内容。 2.查阅相关资料,自学具体课题中涉及到的新知识。 3.采用结构化、模块化程序设计方法,功能要完善,界面要美观。 4.按要求写出课程设计报告,并于设计结束后1周内提交。 一概述 1)掌握数组指针的概念及其应用 2)培养团结合作精神 2. 课程设计的要求 要求我们有扎实的C语言知识,以及良好的编程习惯,能够熟练的应用循环,有毅力,还要求我们有较强的合作精神,善于总结。同时还要求我们自学C语言作图部分知识。在必要时还要上网查相关资料。 3.课程设计的主要设计思想 扫雷游戏主要用了一个10行10列的二维数组,刚开始利用random随机布雷。 每一个程序最主要的是算法。扫雷游戏算法的重点是一开始统计好每个格子周围有多少雷,当鼠标左键点在格子上时做出判断,如果周围8个格子有雷则显示出雷数,如果没有雷则显示空白格(在四个角的格子显示周围3个格子,其它边缘的格子显示周围5个的状态),我们在主函数中用两个for语句来判断周围雷数。我们还加了鼠标处理函数。 如果格子上有雷则调用函FailExitGame(),显示“Fail!”,游戏结束。若所有的雷都标出,且所有的格子都处理过,则调用函数ExitGame(),显示“OK,Good!”,游戏结束。游戏结束后,按任意键出去。

java课程设计

面向对象程序设计课程设计报告 专业计算机科学与技术姓名吐尔巴依班级软件2班学号12001216 题目理财助手日期2014-12-6 功 能 描述 这个设计是一款具有简单的理财功能的小设计,可以选择开销的类型进行输入,当你每月的消费输入完成之后,最后统计完成之后输出你这个月的消费去向。 开销 房屋 贷款 汽车 贷款 汽油 费用 请客 开销 购物 花销 贷 款 还 款 年 限 利 率 贷 款 年 限 利 率 汽 油 类 型 费 用 日 期 费 用 支 出 目 的 支 出 目 的 费 用

设计思路 1.建立一个抽象类loan和一个贷款接口, 2.在建立一个FD类(房屋贷款类)继承Daikuan接口, 3.carloan(汽车费用)继承loan类并且用daikuan这个接口实现, 4.建立一个请客吃饭类Eatloan来继承loan类,在建立shopping类继承Eatloan 5 switch语句进行输入,跳转到以上类。 运行结果 选择界面 房屋贷款类, 汽车贷款: 汽油费用 请客开销:

购物开销: 查看这个月的消费: 源文件:import java.io.*; //总的花销的抽象类 abstract class Loan { String type;//类型 float price;//花费 abstract String getType(); abstract float getPrice(); } //贷款借口 interface Sf { float getMoney(int years,float i); } //房屋贷款类

class Fd implements Sf { float fwz;//房屋总贷款 public float getMoney(int years,float i)//计算每月还贷{ return fwz*(1+i/100)/(years*12); } } //汽车贷款、汽油费用 class CarLoan extends Loan implements Sf { float qch; CarLoan() { System.out.println("汽车贷款。"); } CarLoan(String s,float p) { super.type=s; super.price=p; } public float getMoney(int year,float i) { return qch*(1+i/100)/(year*12); } String getType() { return super.type; } float getPrice() { return super.price; } } //请客吃饭类 class EatLoan extends Loan {

5_Java课程设计源代码

package zhouchuan; import java.applet.*; import java.awt.*; import java.awt.event.*; import https://www.sodocs.net/doc/bb11123870.html,.*; public class zhouchuan extends Applet implements ActionListener { AudioClip clip; Button buttonPlay, buttonLoop, buttonStop; public void init(){ try{ URL url=new URL("file:"+"F://ding.wav"); clip=getAudioClip(url);}catch(Exception e){ } buttonPlay=new Button("开始播放"); buttonLoop=new Button("循环播放"); buttonStop=new Button("停止播放"); buttonPlay.addActionListener(this); buttonStop.addActionListener(this); buttonLoop.addActionListener(this); add(buttonPlay); add(buttonLoop); add(buttonStop); } public void stop(){ clip.stop(); } public void actionPerformed(ActionEvent e){ if(e.getSource()==buttonPlay) clip.play(); else if(e.getSource()==buttonLoop) clip.loop();

游戏开发课程设计报告模版-扫雷游戏报告(定稿)

中原工学院信息商务学院 课程设计报告 2016~2017学年第一学期 课程游戏开发课程设计 课程设计名称扫雷游戏 学生姓名*** 学号***** 专业班级数媒141 指导教师郑全录 2016年12月

目录 第一章设计内容及要求 (1) 1.1 扫雷游戏的基本要求 (1) 1.2 游戏需要实现的主要功能 (1) 第二章需求分析 (2) 2.1扫雷游戏界面设计 (2) 2.2 雷区的设计 (2) 2.3 音效的设计 (3) 2.4 扫雷英雄榜的设计 (3) 第三章总体设计 (5) 3.1 总体功能图 (5) 3.2 总体流程图 (5) 第四章主要功能设计流程 (6) 4.1 雷区设计流程图 (6) 4.2 音效设计流程图 (6) 4.3 英雄榜设计流程图 (7) 第五章主要功能设计流程 (8) 5.1 类之间关系图 (8) 5.2程序运行效果图 (8) 5.2.1 游戏登录界面 (8) 5.2.2游戏菜单界面 (9) 5.2.3游戏运行界面 (10) 5.2.4游戏英雄榜界面 (12) 第六章总结 (13) 参考文献 (14) 附录 (15)

第一章设计内容及要求 1.1扫雷游戏的基本要求 当前各种游戏层出不穷,因为游戏的开发成本非常大,所以游戏的开发具有一定的风险性,但是一些小游戏的开发成本具有成本小,编写简单的优势,所以这些小游戏在游戏开发中也占有一席之地。在这类小游戏中包括益智类游戏,它以画面精美、游戏方法简单等特点得到大家的认可。成为人们在工作之余不可或缺的好伙伴。针对这种情况我选择了扫雷游戏该课题作为我的课程题目。 Windows XP和Windows 7系统提供的扫雷游戏是一个很有趣的游戏。本次课程设计的主要任务是使用JA V A语言编写一个与其类似的扫雷游戏。具体要求如下: 1、扫雷游戏分为初级、中级和高级三个级别,同时扫雷英雄榜存储每个级别的最好成绩,即挖出全部的地雷且用时最少者。单击游戏菜单可以选择“初级”、“中级”和“高级”或“查看英雄版”。 2、选择级别后将出现相应级别的扫雷区域,这时用户使用鼠标左键单击雷区中任何一个方块便启动了计时器。 3、用户要揭开某个方块,可单击它。若所揭方块下有雷,用户便输了这一局,若所揭方块下没有雷,则显示一个数字,该数字代表此方块周围的8个方块中共有多少颗雷。 4、如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。用户每标记出一个扫雷标记(无论用户的标记是否正确),窗口左上角的雷数计数器将会减少一个。 5、扫雷胜利后(用时最少者),程序弹出保存成绩的对话框。 6、用户如果遇到疑问的方块,可以勾选游戏菜单下的标记选项卡(或者用快捷键Alt+G然后点击M)即可标记该可疑方块,此时双击右键并可出现“?”标记。另有颜色选项,当用户选中该项时,游戏将以最低图像像素来显示。 7、如果用户需要使用提示声,可选中声音选项,此时将听到计时的咔嗒声。当用户点中雷时,将有爆炸声产生;胜利时,将有凯旋的旋律播放,此时企鹅出现欢悦表情。 1.2游戏需要实现的主要功能 1、用户可以自定义级别并且可以任意输入雷数; 2、具有计时功能,既显示用户完成所有扫雷任务所需要的时间; 3、自动保存扫雷英雄榜。

java课程设计2013级大纲以及设计报告

珠海学院课程教学大纲 课程名称:java程序课程设计 适用专业: 2013级计算机科学与技术 课程类别:专业基础课 制订时间:2014年12月 计算机科学与技术系制

目录 1java程序课程设计教学大纲 2 java程序课程设计说明书 3 java程序课程设计报告(模板) 4 java程序课程设计成绩评定表 java程序课程设计教学大纲 (2011年制订,2014年修订) 一、课程编号: 二、前修课程:java程序设计 三、学分:2学分 四、学时: 32学时 五、课程性质与任务: 1.课程性质:《java程序课程设计》是吉林大学珠海学院计算机科学与技术系为本科生各专业开设的专业实践课。计算机科学与技术系本科生在完成《java 程序设计》课程学习后,通过本课程进入专业实践训练环节,其主要目的是使学生深入理解并实践在《java程序设计》课程中所学的有关知识,通过课程设计增强学生的实践动手能力,提高学生独立分析和解决实际问题的能力。培养学生配合完成任务的能力,为学生毕业后的实际工作打好基础。 课程设计是培养学生综合运用所学知识锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。Java语言的应用十分广泛,例如大型信息系统、通信、网络控制等。java课程设计对增强学生对基础知识的掌握和综合运用是非常必要,对后续许多专业课程的学习和实践训练都具十分重要的意义。 2.课程任务:本课程要求学生在学习了java基础编程的相关技术后,将课本中多个章节的编程技术灵活运用到一些复杂的综合例题中去,使学生了解应用问题

的分析方法和设计解决实际问题的具体过程,掌握应用java进行程序设计的基本规范和技巧,掌握面向对象编程的设计思想,重点掌握java的基本语法规则、输入输出方法、网络编程、多线程编程、小应用程序、数据库编程的综合应用。通过编程掌握调试java程序的基本技巧、模块化应用程序和测试运行复杂应用程序的基本流程。 六、课程教学基本要求提供足够多的程序设计选题,题目应覆盖面较为广泛,部分题目要具有开放性,要求每个学生根据自己的实际情况选择题目,经教师批准后即可进入实际工作阶段。 课程设计结束对每个学生进行验收,要求每个学生提交合格的课程设计报告,还要保证程序能够运行,能够讲清楚自己的工作。老师在检查过程中可针对程序提出问题,学生回答,若程序无法运行得到结果并且具有大量编译错误,而且对程序的内容无法正确解释,则实践老师可以根据实际情况给予评分为不及格,若程序可以运行,但完成的界面以及方法不够完善,则酌情扣分,若程序运行无问题,则提问回答不好的也要相应扣分。课程设计课程集中安排在第十一周。每个同学都要提交初期、中期和最后的文档,提交课程设计报告,要求在规定时间内提交文档。最后验收时,若文档不全,成绩受到一定影响。 七、学时分配表 2011年 12 月8日 java程序课程设计说明书

Java课程设计学生信息管理系统

《面向对象程序设计》课程设计报告题目:《**********》课程设计 学院:信息工程学院 姓名: *** **** ****** 学号: ** ** ** 专业:计算科学与技术 班级: ***** 指导教师: ***** 2015 年 12月

目录 目录 ................................................................... 摘要 ................................................................... 1.引言 ................................................................. 2.设计目的与任务 ........................................................ 3. 设计方案 ............................................................. 3.1总体设计...................................................... 3.2开发环境...................................................... 3.3层次图........................................................ 3.4界面预览...................................................... 3.4.1登录界面 .................................................. 3.4.2该管理员不存在( 用户名:name 用户密码:psw ) ............. 3.4.3学生信息管理界面 .......................................... 3.4.4填写学生信息 .............................................. 3.4.5录入学生信息 .............................................. 3.4.6查询学生信息 ..............................................

java扫雷游戏课程设计报告

Java课程设计报告 姓名 号学 系院 级班 业专 1.设计内容及要求 1.1 扫雷游戏的基本要求 Windows 2000/XP系统提供的扫雷游戏是一个很有趣的游戏。本章的课程设计使用Java语言编写一个与其类似的扫雷游戏。具体要求如下: (1) 扫雷游戏分为初级、中级和高级三个级别,扫雷英雄榜存储每个级别的最好成绩,即挖出全部的地雷且用时最少者。单击游戏菜单可以选择“初级”、“中级”和“高级”或“查看英雄版”。 (2) 选择级别后将出现相应级别的扫雷区域,这是用户使用鼠标左键单击雷区中任何一个方块便启动计时器。 (3) 用户要揭开某个方块,可单击它。若所揭方块下有泪,用户便输了这一局,若所揭方块下五雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。. (4) 如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为

是雷的图标,即给出一个扫雷标记。用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。 (5) 扫雷胜利后(用时最少者),程序弹出保存成绩的对话框。 (6)用户可以选择标记疑问的方块,用可以勾选游戏菜单下的标记(或者用快捷键alt+G 然后M)即可,此时双击右键并可出现“?”标记。另有颜色选项,当用户勾选此项时,游戏将以最低图像像素来显示。 (7)如果用户需要即使提示声,并可选中声音选项,此时将听到计时的卡塔声。当用户点中雷时,将有爆炸声产生,胜利时,将有凯旋的旋律播放,此时企鹅出现欢悦表情。 1.2 需实现的主要功能 (1)用户可以自定义级别并且可以任意输入雷数; (2)具有计时功能,即显示用户完成移动盘子所花费的时间; (3)用户可以选择是否有音效; (4)自动保存扫雷英雄榜; 2.需求分析 2.1 扫雷棋盘的布局设计 系统的整体布局为:CardLayout布局, 采用了菜单、按钮、面板…等组件,菜单主要包括开始,选择级别,标记,扫雷英雄榜,退出,按钮的功能是重新开始新的游戏。 2.2 雷区的设计 MineArea类是javax.swing包中Jpanel容器的子类,实现了ActionListener 和MouseListener接口,所创建的对象:mineArea是MineGame类中最重要的成员之一,作为一个容器添加到MineGame窗口的中心。标明MineArea类的主要成 图2-1 MineArea类的UML图

java课程设计-文件管理系统

课程设计 课程设计名称:java课程设计 专业班级: XXX班级 学生姓名: XXXX 学号: XXXXX 指导教师: XXXXX 课程设计时间:

目录 目录 ------------------------ 1 课程设计任务书 ------------------------- 2 一、需求分析 ------------------------- 3 二、概要设计 ------------------------- 4 三、开发语言 ------------------------- 4 四、详细设计 ------------------------ 4 五、调试与分析 ------------------------- 13 六、功能测试 ------------------------- 14 七、结论与心得 -------------------------- 15 八、参考资料 -------------------------- 16 九、成绩评价表 -------------------------- 17

计算机科学技术(卓越计划)专业课程设计任务书

文件管理系统 一、需求分析 题目要求对文件进行复制,压缩,解压等操作,相当于一个简单的文管理系统。对此我新加了剪切,删除,和重命名等功能。程序的整体输入控制是采用图形用户界面,同时为了减少用户输入时不必要的错误,程序还支持文件选择器功能,用户可以直接点击相应的按钮选择相应的文件或文件夹。 (1)复制功能实现了将文件复制到指定的文件夹中(包括文件夹的复制和单个文件的复制),同时允许用户选择不同类型的文件复制。其 中有全文件复制(文件夹里所有文件全部复制)、无空文件夹的文 件复制(即复制的文件夹不含空文件夹)、指定参数的文件复制(即 文件夹复制时可以指定相应的类型参数doc、txt等选择要被复制 的文件类型)。 (2)压缩功能实现将文件压缩到指定路径(包括单个文件的压缩和文件夹的压缩)。 (3)解压功能实现将指定的压缩文件解压到指定的路径 (4)剪切功能实现将制订文件夹下的文件剪切到制订的文件夹下,与复制不同的,剪切后该文件只存在于剪切后的文件夹。 (5)删除功能实现了文件的删除和文件夹删除,其中文件的删除可以直调用文件的方法删除文件,而文件夹的删除必须递归删除文件夹中 的所有文件,然后再层层调用方法删除文件夹。 (6)重命名功能实现对指定文件夹下的文件的重命名,如果该文件夹下已经存在该文件名,则提示重新命名

相关主题