下载此文档

纸牌游戏-员工管理系统设计与实现(面向对象课程设计报告-含源代码).zip


文档分类:IT计算机 | 页数:约29页 举报非法文档有奖
1/29
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/29 下载此文档
文档列表 文档介绍
面向对象实验报告小组成员:曲植201205301187代码设计崔浩然201200301033代码设计杨阳201205301280代码设计杜培文201205301042测试杨晓冬201205301279测试张聪峰201200301303需求分析实验项目名称:纸牌游戏 实验目的:设计一个简单的CardGames程序,运用面向对象封装、继承、抽象类、抽象方法、多态、动态绑定等概念。实验目标与要求:参考windows的纸牌游戏使用语言:java实验内容:单人纸牌游戏,牌桌上有7个堆共28张牌,第一堆1张牌,第二堆2张,。。。第7堆7张,每一堆的第一张牌朝上,其他朝下。牌桌上还有4个suitpiles,一个deckcard堆和一个discardcard堆,布局如下(参考windows的纸牌游戏)主要代码及其说明::{ //初始化纸牌 allCard=newArrayList<Card>(); for(inti=0;i<4;i++) for(intj=0;j<=12;j++) (newCard(j,i)); Randomgenerator=newRandom(); for(inti=0;i<52;i++){ intj=(()%52); //swapthetwocardvalues Cardtemp=(i); (i,(j)); (j,temp); } //初始化牌堆 allPiles=newCardPile[13]; suitPile=newSuitPile[4]; tablePile=newTablePile[7]; //thenfillthemin allPiles[0]=deckPile=newDeckPile(200,40); allPiles[1]=discardPile=newDiscardPile(200++50,40); for(inti=0;i<4;i++) allPiles[2+i]=suitPile[i]= newSuitPile(200++50++150+(40+)*i,40); for(inti=0;i<7;i++) allPiles[6+i]=tablePile[i]= newTablePile(200+(50+)*i,40++40,i); for(inti=0;i<7;i++){ ArrayList<Card>al=newArrayList<Card>(); for(intj=0;j<tablePile[i].getCardNum();j++){ ((()-1)); } tablePile[i].addCard(al); tablePile[i].setCardNum(tablePile[i].getNotFlipNum()+1); //(tablePile[i].getCardNum()); tablePile[i].top().setFaceup(true); } intrest=(); for(inti=0;i<rest;i++){ ((()-1)); //(i); } moveCard=newMoveCardPile(); 说明:该算法先创建52张纸牌(Card)对象,并放置allCard(ArrayList)中,然后模拟现实当中的洗牌操作,主要是利用java的Random来打乱allCard里牌的排列顺序,然后初始化各个牌堆类:deckPile,discardPile,tablePile,suitPile,moveCard。此外还建了一个数组allPiles(CardPile[]),用于存储所有的牌堆类。最后将allCard中的纸牌牌(Card)对象分发至各个堆里。():   传给该函数坐标用于判断点中该牌堆中的某张纸牌(还有个include方法用于判断是否点中牌堆),其中因为TablePile要支持选中多张纸牌,要改写CardPile的方法。CardPile的select方法:publicintselect(inttx,intty){ if(inc

纸牌游戏-员工管理系统设计与实现(面向对象课程设计报告-含源代码) 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息