[高等教育]21点小游戏JAVA课程设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[高等教育]21点小游戏JAVA课程设计

21点小游戏 1.课程设计的目的 面向对象程序设计是一门实践性很强的专业基础课程,课程设计是学习完该课程后进行的一次较全面的综合练习。其目的在于通过实践加深学生对面向对象程序设计的理论、方法和基础知识的理解,掌握使用Java语言进行面向对象设计的基本方法,提高运用面向对象知识分析实际问题、解决实际问题的能力,提高学生的应用能力。通过这次设计,掌握以下内容:面向对象技术中的继承与多态(重载和覆盖)机制、各种修饰符的使用类、包、接口的定义与使用。常用工具类与算法的实现(数组、向量、字符串、链表),java.awt、javax.swing中常用标准GUI组件及相应的事件处理,Java的异常处理机制,Java的数据库连接技术,Java的多线程技术与动画制作以及Java的网络编程 “21点”是一个古老的扑克牌游戏,作为一款极具趣味性的牌类游戏,最早出现在十六世纪,起源于法国,法语称:vingt-et-un (单单字面来看是20和1,因为法文数字本身的复杂性,就是简单的21), 因此在广为流行后该游戏就叫21。后传入英国并广泛流传,英文的名字叫黑杰克(Blackjack)。2.设计方案论证 2.1设计思路 本游戏选用Eclipse、JBuilder、NetBeans等作为开发平台以提高开发效率,通过资料查阅和学习尽可能熟练掌握其中一种集成开发环境。在要牌的过程中,如果所有的牌加起来超过21点,玩家就输了——叫爆掉(Bust),游戏也就结束了。假如玩家没爆掉,又决定不再要牌了,这时系统随机给庄家发牌。假如庄家的总点数加起来小于18点(Hit),系统就必须继续给庄家发牌(不管庄家的点数是否比玩家大),一直发到庄家的点数大于等于18点为止。如果庄家的总点数等于或多于18 点,则必须停牌(Stand)。庄家在给自己发牌的过程中,假如庄家爆掉(超过21点),那庄家就输了。假如庄家没爆掉,那么玩家就与庄家比点数大小,大为赢。一样的点数为平手,玩家可以把自己的赌注拿回来。 如果拿牌拿到手中有5张牌,并且总数不到21点,那这种情况能压住一切牌型(当然5张加起来一共21点更好)。 图1 系统流程图 2.2详细设计 1游戏计数规则 扑克牌 A~10 为1~10,J、Q、K 分别为为11、12、13。在要牌的过程中,如果所有的牌加起来超过21点,玩家就输了——叫爆掉(Bust),游戏也就结束了。假如玩家没爆掉,又决定不再要牌了,这时系统随机给庄家发牌。假如庄家的总点数加起来小于18点(Hit),系统就必须继续给庄家发牌(不管庄家的点数是否比玩家大),一直发到庄家的点数大于等于18点为止。如果庄家的总点数等于或多于18 点,则必须停牌(Stand)。庄家在给自己发牌的过程中,假如庄家爆掉(超过21点),那庄家就输了。假如庄家没爆掉,那么玩家就与庄家比点数大小,大为赢。一样的点数为平手,玩家可以把自己的赌注拿回来。 如果拿牌拿到手中有5张牌,并且总数不到21点,那这种情况能压住一切牌型(当然5张加起来一共21点更好)。 二十一点术语 花牌(K、Q、J分别为11、12、13)和10计算为 10点。其它牌则按照牌面上的点数计算。 要牌(HIT) : 再拿一张牌。玩家只要手上牌相加点数不超过 21点都可要牌;但庄家要牌则有限定,即手上牌相加点数在 17点或以下,必需要牌;而手上牌相加点数在 18点或以上,就不能再要牌。 不要(STAND) : 不再拿牌。在任何情况下,玩家可选择停止要牌。 赌注加倍(DOUBLE) : 玩家在拿到前两张牌之后,可以再下一注与原赌注相等的赌金(如果觉得少可以加倍),然后只能再拿一张牌。如果玩家的点数等于18或超过18点,系统就不允许玩家下注及赌注加倍。 放弃: 玩家不想玩时,可以放弃本局游戏,系统退回一半的投注金。 平手: 即玩家手上牌的点数与庄家的点数相同的时候,双方都没有输赢,投注金将退回给玩家。 赢局: 玩家将评定为赢。玩家点数等于21点(赢注加倍)、玩家要了5张牌且点数不超过21点(赢注加倍)、玩家点数比庄家点数大且不超过21点、或庄家点数超过 21点(家点数不超过 21点)。庄家赢局: 玩家点数已超过 21点、庄家点数较玩家点数接近 21点(但不超过21点) 赔率: 玩家刚好21点 或 5张牌不超21点赔3倍,其它为1赔1。 图2 菜单功能图 本程序包括三个类文件:主类MainFrame.java,类Mycanvas.java,类cell.java。其中类MyMainFrame包含main()方法,另外两个类中MyCanvas()、方法reLoadPicture()、方法isFinish()方法start()和方法 paint()方法Mousepressed(Mo

您可能关注的文档

文档评论(0)

seunk + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档