java实现蜘蛛纸牌与实现学士学位论文Word格式.docx
- 文档编号:19473872
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:58
- 大小:386.06KB
java实现蜘蛛纸牌与实现学士学位论文Word格式.docx
《java实现蜘蛛纸牌与实现学士学位论文Word格式.docx》由会员分享,可在线阅读,更多相关《java实现蜘蛛纸牌与实现学士学位论文Word格式.docx(58页珍藏版)》请在冰豆网上搜索。
2开发工具介绍2
2.1java语言概述2
2.2java语言的特点2
2.3Eclipse简介3
3可行性分析4
3.1概述4
3.2本系统的可行性分析5
3.3系统分析5
3.3.1限定问题5
3.3.2确定目标6
3.3.3调查研究,收集数据6
3.3.4提出方案和评价标准6
3.3.5方案评估6
3.3.6提交可行方案6
4总体设计7
4.1系统设计7
4.2主要模型8
4.3系统功能结构图8
5详细设计10
5.1代码功能功能模块设计10
5.2模块一的详细介绍10
5.2.1主要的类10
5.2.2主要的变量11
5.2.3主要的方法11
5.3模块二的详细介绍12
5.3.1主要的类12
5.3.2主要的变量12
5.3.3主要的方法12
5.4模块三的详细介绍13
5.4.1主要类介绍13
5.4.2主要变量13
5.4.3主要方法13
5.5模块四的详细介绍14
5.5.1主要的类14
5.5.2主要的变量14
5.5.3主要的方法14
6具体功能的设计16
6.1需要实现的主要功能16
6.2主要功能的代码实现17
6.2.1主界面的实现17
6.2.2游戏按钮的选项及其下拉列表18
6.2.3纸牌移动操作19
6.2.4回收纸牌操作20
6.2.5帮助菜单功能22
6.2.6退出模块设计23
7程序的运行及发布24
7.1运行程序24
7.2发布程序24
8软件测试25
8.1简介25
8.2软件测试的原则25
8.3软件测试的目标26
8.4软件测试内容26
8.5测试的方法26
8.5.1等价类26
8.5.2边界值27
结论33
参考文献34
致谢35
外文原献36
中文翻译48
1绪论
1.1游戏开发的背景知识
蜘蛛纸牌时一款很受大家喜欢的休闲类游戏,随着科学技术的不断发展的蜘蛛纸牌的的功能也越来越强大,界面变的越来越美观,玩蜘蛛纸牌的人也很多。
蜘蛛纸牌在window2000的时候就已经存在于系统中,一直是大家在休闲的最佳游戏。
通过这次蜘蛛纸牌游戏的设计,实现蜘蛛纸牌的主要功能,不论是对游戏的了解,还是对自己设计程序的能力都是很好的提高。
游戏的目标是以最少的移动次数将牌面中的十叠牌以及待发的五组,共计八副牌整理移除。
当所有牌被移除整理到界面的左下方,游戏获胜。
1.2需要做的准备工作
需要做的工作有学习掌握开发程序的方法,安装所需的编程的平台eclipse,了解开发工具,进行进程分析,根据得需求规格说明书设计具体的程序流程图,编写程序,修改程序,运行程序,系统调试程序、测试程序,发布程序。
2开发工具介绍
2.1java语言概述
java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE,JavaME,JavaSE)的总称。
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。
Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
现在常用的浏览器比如说360浏览器,IE浏览器中均配备有javaapplet。
Java不同于一般的编译执行计算机语言和解释执行计算机语言。
它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。
从而实现了“一次编译、到处执行”的跨平台特性。
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了Java程序的性能。
2.2java语言的特点
java语言是一种简单的、面向对象的、分布式的、健壮的、安全的、与平台无关的、多线程、高性能的、动态程序设计语言。
1.java语言简单易学的:
java语言的语法与C语言和C++语言很接近,使得多数程序员很容易学习和使用java。
另一方面,java丢弃了C++中很少使用的,很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。
特别地。
java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
2.平台无关性:
平台无关性是指Java能运行于不同的平台。
Java引进虚拟机原理,并运行于虚拟机,实现不同平台的Java接口之间。
使用Java编写的程序能在世界范围内共享。
Java的数据类型与机器无关,Java虚拟机(JavaVirtualMachine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能,提供于不同平台的接口的。
3.安全性:
Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。
除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类classloader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。
4.面向对象:
Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制。
Java语言全面
支持动态绑定,而C++语言只对虚函数使用动态绑定。
总之,Java语言是一个纯的面向对象程序设计语言。
5.分布式:
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口,它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。
Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
6.健壮性:
Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。
对指针的丢弃是Java的明智选择。
Java的安全检查机制使得Java更具健壮性。
7.解释型:
Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。
在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
8.动态:
java程序的基本组成单元就是类,有些类是自己编写的,有些是从类库中引入的,而类又是运行时动态装载的,这就使得Java可以在分部环境中动态的维护程序及分类,而不像C++那样,没档期类库升级以后,如果想让程序具有新类库提供的功能,就需要修改程序,重新编译。
9.多线程:
在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子类来创建。
通常有两种方法来创建线程:
其一,使用型构为Thread的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。
值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。
线程的活动由一组方法来控制。
Java语言支持多个线程的同时执行,并提供多线程之间的同步机制。
10.可以移植的:
这种可移植性来源于体系结构中立性,另外,java还严格规定了各个基本数据类型的长度。
java系统本身也具有很强的可移植性,java编译器是用java实现的,java运行环境是用ANSIC实现的。
11.Java语言是体系结构中立的:
Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。
这种途径适合于异构的网络环境和软件的分发。
2.3Eclipse简介
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentTools,JDT)。
虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。
Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。
由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
这种平等和一致性并不仅限于Java开发工具。
尽管Eclipse是使
用Java语言开发的,但它的用途并不限于Java语言;
例如,支持诸如C/C++和COBOL等编程语言的插件已经可用,或预计将会推出。
Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。
基于Eclipse的应用程序的一个突出例子是IBM&
reg;
Rational&
SoftwareArchitect,它构成了IBMJava开发工具系列的基础。
EclipseIDEforJavaEEDevelopers。
3可行性分析
可行性分析是通过对项目的主要内容和配套条件,如市场需求、资源供应、建设规模、工艺路线、设备选型、环境影响、资金筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的财务、经济效益及社会环境影响进行预测,从而提出该项目是否值得投资和如何进行建设的咨询意见,为项目决策提供依据的一种综合性的系统分析方法。
可行性分析应具有预见性、公正性、可靠性、科学性的特点。
3.1概述
可行性研究主要内容是要求以全面、系统的分析为主要方法,经济效益为核心,围绕影响项目的各种因素,运用大量的数据资料论证拟建项目是否可行。
对整个可行性研究提出综合分析评价,指出优缺点和建议。
为了结论的需要,往往还需要加上一些附件,如试验数据、论证材料、计算图表、附图等,以增强可行性报告的说服力。
化工项目可行性研究软件(RSGL-KX2.0),以化工行业《可行性研究报告》、《立项申请书》规范为基础,通过文本、数据灵活调用,生成符合国家规定的《可行性研究报告》、《项目立项申请书》的格式。
本软件的意义在于提高化工应用课题立项及项目生产转化时的可行性研究的准确预测,旨在克服化工科技人员在技术指标、生产销售、环境评价、成本核算、利润分配、风险评估等方面的知识欠缺,降低化工项目的投资风险。
该软件的内容翔实,使用简便,只需要输入基础技术数据和基础经济数据就可得到规范的完整《可行性研究报告》和《项目立项申请书》文档。
我国可行性研究存在的主要问题,一是工程技术方案的研究论证深度不够。
按照国外的通常做法,可行性研究阶段的研究深度应能达到定方案的程度,因此要求在工程技术方案论证,应达到BasicDesign或ConceptDesign的程度,基本相当于我国的初步设计应达到的水平,应提出明确的设备清单;
二是财务评价就项目论项目,这与国外利用企业理财的理论和方法进行资本预算管理,对投资项目进行投资决策和融资决策的通行做法存在重大差异,并且在经济评价方面不恰当地使用了"
国民经济评价"
的概念,由此引起一系列的认识误区;
三是在市场分析、组织机构分析等方面与国外差别较大,研究深度严重不足;
四是不重视多方案的比选及项目风险分析,或者分析的内容、深度严重不足,缺乏项目周期各阶段风险管理的统一筹划及策略论证。
可行性研究的依据:
一个拟建项目的可行性研究,必须在国家有关的规划、政策、法规的指导下完成,同时,还必须要有相应的各种技术资料。
进行可行性研究工作的主要依据主要包括:
①国家经济和社会发展的长期规划,部门与地区规划,经济建设的指导方针、任务、产业政策、投资政策和技术经济政策以及国家和地方法规等;
②经过批准的项目建议书和在项目建议书批准后签订的意向性协议等;
③由国家批准的资源报告,国土开发整治规划、区域规划和工业基地规划。
对于交通运输项目建设要有有关的江河流域规划与路网规划等;
④国家进出口贸易政策和关税政策;
⑤当地的拟建厂址的自然、经济、社会等基础资料;
⑥有关国家、地区和行业的工程技术、经济方面的法令、法规、标准定额资料等;
⑦由国家颁布的建设项目可行性研究及经济评价的有关规定;
⑧包含各种市场信息的市场调研报告。
可行性研究的一般要求:
可行性研究工作对于整个项目建设过程乃至整个国民经济都有非常重要的意义,为了保证可行性研究工作的科学性、客观性和公正性,有效地防止错误和遗漏,在可行性研究中,
(1)首先必须站在客观公正的立场进行调查研究,做好基础资料的收集工作。
对于收集的基础资料,要按照客观实际情况进行论证评价,如实地反映客观经济规律,从客观数据出发,通过科学分析,得出项目是否可行的结论。
(2)可行性研究报告的内容深度必须达到国家规定的标准,基本内容要完整,应尽可能多地占有数据资料,避免粗制滥造,搞形式主义。
(3)为保证可行性研究的工作质量,应保证咨询设计单位足够的工作周期,防止因各种原因的不负责任草率行事。
具体工作周期由委托单位与咨询设计单位在签订合同时协商确定。
3.2本系统的可行性分析
(1).投资必要性
主要根据市场调查及预测的结果,以及有关的产业政策等因素,论证项目投资建设的必要性;
(2).技术的可行性
主要从事项目实施的技术角度,合理设计技术方案,并进行比选和评价;
(3).财务的可行性
主要从项目及投资者的角度,设计合理财务方案,从企业理财的角度进行资本预算,评价项目的财务盈利能力,进行投资决策,并从融资主体(企业)的角度评价股东投资收益、现金流量计划及债务清偿能力;
(4).组织的可行性
制定合理的项目实施进度计划、设计合理组织机构、选择经验丰富的管理人员、建立良好的协作关系、制定合适的培训计划等,保证项目顺利执行;
(5).经济的可行性
从资源配置的角度衡量项目的价值,评价项目在实现区域经济发展目标、有效配置经济资源、增加供应、创造就业、改善环境、提高人民生活等方面的效益。
(6).社会可行性
分析项目对社会的影响,包括政治体制、方针政策、经济结构、法律道德、宗教民族、妇女儿童及社会稳定性等;
(7).风险因素控制的可行性
对项目的市场风险、技术风险、财务风险、组织风险、法律风险、经济及社会风险等因素进行评价,制定规避风险的对策,为项目全过程的风险管理提供依据。
3.3系统分析
3.3.1限定问题
所谓问题,是现实情况与计划目标或理想状态之间的差距。
系统分析的核心内容有两个:
其一是进行“诊断”,即找出问题及其原因;
其二是“开处方”,即提出解决问题的最可行方案。
所谓限定问题,就是要明确问题的本质或特性、问题存在范围和影响程度、问题产生的时间和环境、问题的症状和原因等。
限定问题是系统分析中关键的一步,因为如果“诊断”出错,以后开的“处方”就不可能对症下药。
在限定问题时,要注意区别症状和问题,探讨问题原因不能先入为主,同时要判别哪些是局部问题,哪些是整体问题,问题的最后确定应该在调查研究之后。
通过亲身体验总结各银行ATM提款机界面流程,得到本系统开发的主要流程界面(主要功能取款、转账、查询、修改密码等)。
3.3.2确定目标
系统分析目标应该根据客户的要求和对需要解决问题的理解加以确定,如有可能应尽量通过指标表示,以便进行定量分析。
对不能定量描述的目标也应该尽量用文字说明清楚,以便进行定性分析和评价系统分析的成效。
3.3.3调查研究,收集数据
调查研究和收集数据应该围绕问题起因进行,一方面要验证有限定问题阶段形成的假设,另一方面要探讨产生问题的根本原因,为下一步提出解决问题的备选方案做准备。
调查研究常用的有四种方式,即阅读文件资料、访谈、观察和调查。
收集的数据和信息包括事实(facts)、见解(opinions)和态度(attitudes)。
要对数据和信息去伪存真,交叉核实,保证真实性和准确性。
3.3.4提出方案和评价标准
通过深入调查研究,使真正有待解决的问题得以最终确定,使产生问题的主要原因得到明确,在此基础上就可以有针对性地提出解决问题的备选方案。
备选方案是解决问题和达到咨询目标可供选择的建议或设计,应提出两种以上的备选方案,以便提供进一步评估和筛选。
为了对备选方案进行评估,要根据问题的性质和客户具备的条件。
提出约束条件或评价标准,供下一步应用。
3.3.5方案评估
根据上述约束条件或评价标准,对解决问题备选方案进行评估,评估应该是综合性的,不仅要考虑技术因素,也要考虑社会经济等因素,评估小组应该有一定代表性,除咨询项目组成员外,也要吸收客户组织的代表参加。
根据评估结果确定最可行方案。
3.3.6提交可行方案
最可行方案并不一定是最佳方案,它是在约束条件之内,根据评价标准筛选出的最现实可行的方案。
如果客户满意,则系统分析达到目标。
如果客户不满意,则要与客户协商调整约束条件或评价标准,甚至重新限定的问题,开始新一轮系统分析,直到客户满意为止。
4总体设计
4.1系统设计
即对有关系统全局问题的设计,也就是设计系统总的处理方案,又称系统概要设计。
它包括:
计算机配置设计、系统模块结构设计、数据库和文件设计、代码设计以及系统可靠性与内部控制设计等内容。
软件功能分解属于下列软件开发中的总体设计阶段。
概要设计解决软件系统的模块划分和模块的层次机构以及数据库设计;
详细设计解决每个模块的控制流程,内部算法和数据结构的设计。
这个阶段结束,要交付概要设计说明书和设计说明,也可以合并在一起,称为设计说明书。
系统设计通常应用两种方法:
一种是归纳法,另一种是演绎法。
应用归纳法进行系统设计的程序是:
首先尽可能地收集现有的和过去的同类系统的系统设计资料;
在对这些系统的设计、制造和运行状况进行分析研究的基础上,根据所设计的系统的功能要求进行多次选择,然后对少数几个同类系统作出相应修正,最后得出一个理想的系统。
演绎法是一种公理化方法,即先从普遍的规则和原理出发,根据设计人员的知识和经验,从具有一定功能的元素集合中选择能符合系统功能要求的多种元素,然后将这些元素按照一定形式进行组合(见系统结构),从而创造出具有所需功能的新系统。
在系统设计的实践中,这两种方法往往是并用的。
系统设计原则:
(1)阶段开发原则
系统框架和数据结构全面设计,具体功能实现分阶段进行。
网站的建设过程可以采取以下三期:
第一期工程搭建网站的基本构架,实现电子商务网的大部分功能,初步实现网上交易;
第二期工程实现网上竞价系统的全部功能;
第三期工程实现网站在线的BtoB交易。
(2)易用性原则
方便上网客户浏览和操作,最大限度地减轻后台管理人员的负担,做到部分业务的自动化处理。
(3)业务完整性原则
对于业务进行中的特殊情况能够做出及时、正确的响应,保证业务数据的完整性。
(4)业务规范化原则
在系统设计的同时,也为将来的业务流程制定了较为完善的规范,具有较强的实际操作性。
(5)可扩展性原则
系统设计要考虑到业务未来发展的需要,要尽可能设计得简明,各个功能模块间的耦合度小,便于系统的扩展。
如果存在旧有的数据库系统,则需要充分考虑兼容性。
本系统参照windows游戏蜘蛛纸牌,自己编写设计实现其功能,它具有如下一些功能:
设计一个游戏界面,包括玩牌区、发牌区和回收区。
(1)纸牌以及其背景的设定。
(2)移动纸牌。
使用鼠标将较小的纸牌拖放到较大的纸牌下方,可以拖动一组纸牌,当要求这组纸牌是同一个花色,并且这一组纸牌从上到下是从大到小排列的,且不间断。
(3)回收纸牌。
当某列出现同一花色,从上到下依次是从K到A的不间组合时,这组纸牌将被回收到回收区中。
(4)发牌。
用鼠标单击发牌区,若发牌区还有剩余的纸牌,则将发出一叠纸牌共10张,依次添加到玩牌区的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 实现 蜘蛛 纸牌 学士学位 论文
![提示](https://static.bdocx.com/images/bang_tan.gif)