- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机科学与技术学院
课程设计报告
2010 — 20011 学年第 一 学期
课程名称 零基础学JavaWeb开发
设计题目 基于b/s模式的牌类游戏开发
学生姓名
学 号
专业班级
指导教师
2010 年 12 月 25 日
目 录
一、功能描述………………………………………………3
二、理论基础………………………………………………4
☆Java语言简介……………………………………………………………4
☆Java运行环境JDK………………………………………………………4
☆线程………………………………………………………………………4
三、总体设计………………………………………………6
四、代码实现………………………………………………7
五、运行结果………………………………………………15
六、参考文献………………………………………………17
摘要
Java是一种解释型的、面向对象的编程语言。适用于各种应用开发,尤其是网络应用,网络服务,嵌入式系统等。它具有简单易学、面向对象、分布式、健壮性、安全稳定、平台无关性、支持多线程、高性能、动态性等特点。在本课程设计中,通过基于b/s模式的牌类游戏开发,主要实现游戏的发牌、难度设置等功能。同时将理论知识与具体实现相结合,巩固对Java的相关方法与概念的理解。
关键字:JDK运行环境 线程 蜘蛛纸牌
功能描述
基于b/s模式的牌类游戏,通过鼠标操作,将电脑多次分发的牌,按照相同的花色由大到小顺序排列起来,直到桌面的牌全部消失,即为胜利。它主要功能包括如下:
★开局:任何时候都可以重新开始一盘新的游戏。
★难度选择:包括简单(单色),中级(双色),高级(四色)。
★发牌。
★显示可行操作:提示当前可行操作。
理论基础
Java语言简介
Java是一种简单的,跨平台的,面向对象的,分布式的,解释的,健壮的安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。JDK是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。JDK 是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。JDK是学好Java的第一步。总体设计
蜘蛛纸牌游戏共由4个部分组成,分别是:Spider.java、SpiderMenuBar.java、PKCard.java、AboutDilog.java。
Spider.java
包含名为Spider的public类,其主要功能为生成蜘蛛纸牌游戏的框架,实现游戏中的方法,包括:纸牌的随机产生、位置的摆放等等。
SpiderMenuBar.java
包含名为SpiderMenubar的public类,其主要功能为生成蜘蛛纸牌游戏的菜单栏,实现菜单栏中的各个组件事件侦听。主要包括3个模块:图形用户界面的构建;组件监听接口的实现;显示可执行操作的线程。
PKCard.java
包含名为PKCard.java的public类,其主要功能为:定义纸牌的属性,包括名称、位置等相关信息。通过相关方法实现了纸牌的移动等。
AboutDilog.java
包括名为AboutDialog的public类,其主要功能为生成蜘蛛纸牌游戏的帮助栏。
代码实现
Spider.java主要代码如下:
? /**? **开始新游戏? */?public void newGame(){??????? this.randomCards();??????? this.setCardsLocation();??????? this.setGroundLabelZOrder();??????? this.deal();??? }??? /**? **返回值:int? **返回牌的数量?? */?public int getC(){??????? return c;??? }
??? /**? **设置等级? */?public void setGrade(int grade){??????? this.grade = grade;??? }
/**? **纸牌初始化? */?public void initCards(){??????? //如果纸牌已被赋值,即将其从框架的面板中移去??if (cards[0] != null){??????????? for (int i = 0; i 104; i++){?????????????
文档评论(0)