编号:
本科毕业论文(设计)
题目:
学院
专业
学号
姓名
指导教师职称:
完成日期
诚信承诺
我谨在此承诺:本人所写的毕业论文《》均系本人独立完成,没有抄袭行为,凡涉及其他作者的观点和材料,均作了注释,若有不实,后果由本人承担。
承诺人(签名):
年月日
2
基于java开发的蜘蛛纸牌程序设计
姓名:关俊生学号:200829010213 指导老师:李林国
摘要:java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java
语言)和Java平台的总称。Java是面向对象的语言。蜘蛛纸牌是一款受人喜欢的休闲游戏,微软
的每一代操作系统中都装有这种纸牌游戏,很多人都玩过蜘蛛纸牌,都熟悉蜘蛛纸牌游戏所需要的
功能。本人做的蜘蛛纸牌游戏开发理念是基于WINDOWS XP操作系统中自带蜘蛛纸牌游戏。利用java
语言实现了蜘蛛纸牌游戏的主要功能如纸牌的移动、放置、回收、重发。利用javax.swing包的类
实现纸牌游戏的用户界面,通为各个菜单组件添加监视器来实现鼠标单击事件所触发的接口方法,
使得用户可以单击菜单项来实现具体的功能。通过设置纸牌的等级来初始化纸牌随机分配纸牌,为
用户玩纸牌游戏提供相应的等级。意义:通过自己对蜘蛛纸牌游戏的开发,使我更加热爱java语
言,让我懂得和洗去了更多程序开发的知识及经验,为以后进入编程工作提供条件。
关键字:java语言、游戏背景、功能实现
Spider solitaire program based on java development Name: Guan Junsheng Student ID: 200 829 010 213 Instructor: Li Linguo
Abstract: java is the Java programming language from Sun Microsystems, Inc. in May 1995 (hereinafter referred to as the general term of the Java language) and Java platforms. Java is object-oriented languages. Spider Solitaire is a people like casual games, each generation of Microsoft's operating system are equipped with this card game, many people have played Spider Solitaire are all familiar with the functionality required by the spider card game. I do spider solitaire game development philosophy is based on the WINDOWS XP operating system comes with the spider solitaire game. Java language to achieve the main function of the spider solitaire game, such as movement of the playing cards, place, recycling, re-issued. The use of the javax.swing package class that implements the user interface of the card game pass for each menu component to add a monitor to the mouse click event triggered by the interface method, the user can click the menu items to achieve a specific function. To initialize the cards by the level of the set of cards randomly assigned to cards, to provide the appropriate level for users playing solitaire. Meaning: the spider solitaire game development, so that I more love the java language, so I know how to wash away the more knowledge and experience of program development, and provide conditions for the future to enter the programming work.
Keywords: Java language, the background of the game functions
3
目录
1.绪论
1.1 游戏开发的背景知识.....................................
1.2 需要做的准备工作......................................
2.开发工具介绍................................................
2.1 java语言概述..........................................
2.2 java语言的特点........................................
2.3 Eclipse开发平台介绍...................................
3.总体设计...................................................
3.1代码功能模块的设计....................................
3.2 程序总体设计流程图...................................
3.3模块一的详细介绍......................................
3.3.1 主要的类.......................................
3.3.2 主要的变量......................................
3.3.3主要的方法.......................................
3.4 模块二的详细介绍.....................................
3.4.1主要的类.........................................
3.4.2 主要的变量.....................................
3.4.3主要的方法.......................................
3.5 模块三的详细介绍......................................
3.5.1主要的类..........................................
3.5.2主要的变量.......................................
3.5.3 主要的方法........................................
3.6模块四的详细.............................................
3.6.1主要的类...........................................
3.6.2主要的变量.......................................
3.6.3 主要的方法........................................
4.功能设计....................................................
4.1 需要实现的主要功能......................................
4.2 功能设计流程图..........................................
4.3 主要功能的代码实现......................................
4.3.1 游戏菜单栏内游戏菜单及帮助菜单功能展示............
4.3.2 主界面的设计.........................................
4.3.3 纸牌的初始化以及发牌操作.............................
4.3.4 纸牌的移动以及放置....................................
4.3.5显示当前纸牌可行的操作................................
4.3.6 回收纸牌.............................................
5.程序的运行及发布................................................
5.1 运行程序....................................................
5.2 发布程序....................................................
6.工作总结........................................................
参考文献..........................................................
4
1.绪论
1.1 游戏开发的背景知识
相信很多人都玩过蜘蛛纸牌这款休闲游戏,现在随着生活水平的提高,人们拥有充分的时间来享受休闲游戏带来的快乐,越来越多的人亲睐蜘蛛纸牌游戏。谈起这款游戏,大家并不陌生。从WINDOWS2000系统开始,就嵌入了蜘蛛纸牌游戏,可是随着微软系统的不段升级,蜘蛛纸牌游戏的功能业变得越来越强大,游戏的界面也更加美观。用户的体验感受也更加美好。所以,蜘蛛纸牌游戏的开发对于人类的生活娱乐更加有意义。了解蜘蛛纸牌的开发过程也是作为一名学习计算机专业大学生所应该尝试的过程。游戏的目标是以最少的移动次数将牌面中的十叠牌以及待发的五组,共计八副牌整理移除。当所有牌被移除整理到界面的左下方,游戏获胜。
1.2 需要做的准备工作
需要做的工作有学习掌握开发程序的方法,开了解发工具,进行需求分析,根据得到的需求规格说明书设计具体的程序流程图,编写程序,修改程序,运行程序,系统调试程序、测试程序,发布程序。
2.开发工具介绍
2.1 java语言概述:
java是由Sun Microsystems公司于1995年5月推出的java程序设计语言和java平台的总称。用java实现的浏览器显示它的魅力:跨平台的特点使得它越来越受到许多程序员的亲睐。java除了可以开发动态的Web页还可以开发各种系统软件。现在常用的浏览器比如说360浏览器,IE浏览器中均配备有java applet。
java平台由java虚拟机和各种java应用编程接口(简称API)构成。java 应用编程接口为java提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在操作系统上安装一个java平台就可以运行任何一个java程序啦。现在java平台已经几乎嵌入到所有的操作系统党章。这样java程序就可以只编译一次,就可以在各种系统当中运行啦。java目前最新的版本是java1.7版本的。
2.2 java语言的特点:
java语言是一种简单的、面向对象的、分布式的、健壮的、安全的、与平台无关的、多线程、高性能的、动态程序设计语言。
1.java语言简单易学的。 java语言的语法与C语言和C++语言很接近,使得多数程序员很容易学习和使用java。另一方面,java丢弃了C++中很少使用的,很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地。java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
2.平台无关性平台无关性是指Java能运行于不同的平台。Java引进虚拟机原理,并运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能在世界范围内共享。Java的数据类型与机器无关,Java虚拟机(Java
5
Virtual Machine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能,提供于不同平台的接口的。
3.安全性Java的编程类似C++,学习过C++的读者将很快掌握Java的精髓。Java舍弃了C++的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理器,防止程序的非法访问。
4.面向对象Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。在Java中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。
5.分布式Java建立在扩展TCP/IP网络平台上。库函数提供了用HTTP 和FTP协议传送和接受信息的方法。这使得程序员使用网络上的文件和使用本机文件一样容易。
6.健壮性Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。并且Java还提供了Null指针检测、数组边界检测、异常出口、Byte code校验等功能。
7.解释型我们知道C,C++等语言,都是针对CPU芯片进行编译,生成机器代码,该代码的运行就和特定的CPU有关。Java不像C或C++,它不针对CPU 芯片进行编译,而是把程序编译成称为自字节码的一种“中间代码”。字节码是很接近机器码的文件,可以在提供了java虚拟机(JVM)的任何系统上被解释执行。
8.动态java程序的基本组成单元就是类,有些类是自己编写的,有些是从类库中引入的,而类又是运行时动态装载的,这就使得Java可以在分部环境中动态的维护程序及分类,而不像C++那样,没档期类库升级以后,如果想让程序具有新类库提供的功能,就需要修改程序,重新编译。
9.多线程
Java是支持多线程的语言。多线程是一种应用程序设计方法。线程是一大进程里分出来的,小的、独立的进程,使得在一个程序里可同时执行多个小任务。多线程带来的好处是具有更好的交互性能和实时控制性能。但采用传统的程序设计语言(如:C/C++)实现多线程程序并非易事。Java实现了多线程技术,提供了简便的实现多线程的方法,并拥有一组高复杂性的同步机制。
10.可以移植的。
这种可移植性来源于体系结构中立性,另外,java还严格规定了各个基本数据类型的长度。java系统本身也具有很强的可移植性,java编译器是用java实现的,java运行环境是用ANSIC实现的。
2.3 Eclipse开发平台简介:
Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而

