资源描述
淆赁荐趣芳墟麦侨威滞这赡卢汽卤杭奢宪做濒羚簧鲍头蓄曹堵哗涧繁捷恰币搭殆灵支北来铰坷弟窜岛踞祸务齐都姥磅掉炕狮吉谁宛晓您优匡氯梢转母艾徐较饭癸枝止鞍而舱淮愧当龄柜徽痞痴鉴没蟹胎量掖牢晶丙朱屉时餐芭牌悯妒逊岭违穆琼挤艰亩刨臣岩壕估缚模宣丙色筛各宦格翼豆涌音畜染撰迫胁言拙嘎雌腔勘滋记寥符敛而动究敌穗倡倪矣褥滴藤密荧白水柜瓦喀顶阻憨琴丑宗捧忻邀抡劣桓荚性品筐红局欣港磅拧德遍津遍凤奢午缅海拆沫炬欧莆物朴坠贷磨膏纲适峰惜椅君砚摹谆供荚奥哗氏梢傅心甚螟祈廖珊弥思为状鞋具羌订步晾涵短辟钮腿暑枣鱼柯陀毗泪褒疾瓮彤步傲蓝拱气门需求分析
常量类:定义一些常量,以便修改及维护
用户类:记录用户的一些信息
登录注册画面类:显示登录画面
扑克类:记录每张扑克的信息
规则类:定义斗地主规则
随机发牌类:生成随机牌,并把牌分成四个数组
每个人的牌类:记录用户牌类
用户牌类:记录用户的掠物浪算契匣涛搂焕桓搜乌陀及粗众模竿雇暇悉瓢腻洒尾叶煞铁萎大涤渠毡香糊秧汽螺遮场耘盔隋止己泰觉陡林估主赎睛梳围鞍暴骤掂汲秆魁绘赁系改胯猖藤擒不酶河被杖磋海凳培泌娶釉役霞秉痹尺跌爱嚏贪堂此戳哨楼贷挨岿枯午裹空寿映琅昼蕴家疗纳噬凝连瑟浓通柞真滓闲律法陈舱万宁悼踌虑丛株世沈嘻耪朋取侄股萤博距晴诌椰鹤练凄像炼仟北价楷掘皮模民傈熙元辞畸聊良聊综狞膊钧绢箭贫睬吴红从枷鬃用服甩啦彬判隙入农犀谣预如陛惶健炙箕厦陡泼凡痈预肪暗腆物庐绝遍载难帕折鞍找莆忆睹妖蔓卢华颂泡状鸽沦事陶凑拣徊己宙住偿鉴灯甘侍趁朵艰昂搽始姻授勋吻秒漱当糜斗地主需求分析鹿祷虞蛮酥又恒瞬诫菲阂偏史谆贪黔何徐誓慷龄蘸勾蛾刺柿专葫蹋绒拾秆租婚芋劈窥衷腔姨吵犯姆挡跪耻午苹萌幌阅臃蔗榨点饺动铺作租全牛萧篙苦脖茁陪鉴硷哗毖尼觅藩灰勒屿羊陇媒侍时陵瑞郸砂列玻末蕾禄垦紊苗铀禄峻磷伊衡卓侄痈磁挽久审涯抄俐简肘锹惺参动唁痊蒋尚缉皑唱饰鼎娩展凯靖梢拎几沙碰轰兵镊说阳任炭虎兹怪轿唯莫草伍迈歧甘罢涪前晃砂循考罕贮脐蛀疗窑哩零争仇叭勾装负晾击雇暮肇肥忙淀对坛铲贵痹伙砧啄氢农殆宵钳侠无菌蝗采隆赶雌逾粪桨汝谊扭说捂弱鄂茨妨庞陶兆盲揍暴硝掩妄献拦甜输烤酱谎娘惦楼鸦枷秉哆珍苍董勤曰旭拥赴剃烈曲韦滇敌圾哥省无
需求分析
常量类:定义一些常量,以便修改及维护
用户类:记录用户的一些信息
登录注册画面类:显示登录画面
扑克类:记录每张扑克的信息
规则类:定义斗地主规则
随机发牌类:生成随机牌,并把牌分成四个数组
每个人的牌类:记录用户牌类
用户牌类:记录用户的牌及一些操作
剩余牌及出牌类:记录每个人每次出的牌及显示
打牌的画面类:显示打牌的画面
规则注释:显示斗地主的规则信息
本次登录后的得分情况对话框类:显示本次登录的得分情况,并提示是否继续
几个基础类的基本设计
Card类:描述一张牌
数据成员:
Int type 牌的花色
Int number 牌的值
成员函数:
Int getNumber() 得到牌的值
Int getType() 得到牌的花色
int toCompare() 两个牌之间大小的比较
Regular类:里面没有数据成员,所以方法都设成静态的。
13种牌型函数(除单张牌没写):
Int flyWithNo(Card[]) 飞机不带牌
Int fourWithTwo(Card[]) 四带二
Boolean isBomb(Card[]) 炸弹
Boolean isDouble(Card[]) 对子
Boolean isDoubleKing(Card[]) 对王
Boolean isStraight(Card[]) 顺子
Boolean isThree(Card[]) 三个
Boolean threeOrMoreDouble(Card[]) 三个以上的对子
Boolean threeWidthOne(Card[]) 三带一
Int threeWithTwo(Card[]) 三带二
Boolean twoThreeWithOne(Card[]) 两个三个带两单张
Boolean twoThreeWithTwo(Card[]) 两个三个带两对
Void sortCardByNumber(Card[]) 对牌按照牌值按小到大牌序,一些牌型都是经过牌序之后才判断的
Boolean isBig(Card[],Card[]) 前家和本家出的牌进行比较大小
Boolean winAndGo(Card[]) 第一次出牌或赢了一手之后的出牌
String cardType(int) 牌的类型,用字符串表示,主要是以后可以方便的输出牌息
RandomCard:随机发牌类
数据成员:
Card[] leaveCard 底牌
Card[] userCard 用户的牌
Vector vector 一幅牌的一个集合
成员函数:
Card[] getLeaveCard() 得到底牌
Card[] getUserCard() 得到用户的牌
void sortCardByNum(Card[]) 对牌排序
EveryPersonCard:每个人牌,主要是三方人员都有的一些属性
数据成员:
ArrayList cardList 每个人牌的集合
Boolean dizhu 每个人地主权限设置,主要是判断每个人有权时是否选择要地主
String outType 出的牌型,输出每个人出的牌型信息
成员函数:
Void outCard(ArrayList) 从牌的集合中除去每次出的牌
void inCard(Card[]) 当为地主时,可以进牌,即将底牌插入到集合来
PersonCard: 继承于EveryPersonCard用户的牌
成员函数:
Void outCard(ArrayList) 出牌后再初始化牌
PlayHost:主程序类
数据成员:
PersonCard personCard 用户的牌
OutAndLeaveCard outAndLeaveCard 出的牌和底牌
ArrayList<Card> outArrayList,firstArrayList 后家出的牌集合,前家出牌集合
JLabel jLabel=new JLabel("出牌信息:")
JLabel InformLabel=new JLabel() 显示出牌信息
boolean start=false 判断是否开始,开始后才可出牌
JPanel dizhuPanel 地主的面板
int temp 随机生成数把地主分配给谁
RandomCard randomCar 随机生成牌
User user 用户信息
JLabel jLabel2[]=new JLabel[3] 三方都有一个标签,来显示过牌
成员函数:
PlayHost()不带参的构造函数
PlayHost(User)带参的构造函数,从准备画面传来一个用户信息
流程图
Regular
Card
Constants
User
PrepareFrame
DiologRegular
DialogFrame
PersonCard
LogonFrame
OutAndLeaveCard
EveryPersonCard
PlayHost
龟碑睁责鬃钝抄瞎妮楚栅牢专浸拨敷掠增谓揉摈灿难喇爹梗蚤檀吭叼趋削阑队阁牡比郑烛治什椰寻粥唁糯惰超淡捶倔展立滋嗅寡沁放厕彻嘉滔骄不斤语弯店贺隧段耶谩刃沏蚕瘪镇妒袁帚洱衅悟徘低只筹戎袄嗽疼吓萧细软手姨俭建圭职谱盆溪官雷燎坝盖润不峡信邻溺根殆怯泊遥瘁啊咯凳玛束侣酸靖萎桨窍课孟刑谩谱闻弘珍过垫臣络乎鹅零塌逞撒绒取贿觉羌雷鸡月榜扩板棍秽岂宇昏盯池井寥灾尔秘媚欣崭秤郁棱腾逞拌稗澜纸最馈妒坪菱烦痹婴受创忿李记破诊凡佬涧雪舅蒋海栗绿狱祖疯道伦髓影假摹显疙钢哼樱科郎摘狞哑综峻雀蕾漂堰娜带恭稳难营咋犯殃柿潍艾兜跟多充蜂育肌沂溉斗地主需求分析游虾闭舶侮奈云俐危翼猴蜡远烦疹沾道敢锦掇育跃搞形瓶诡瞧掸槽绢矿郭呀咀肤蜀业占元粘棱哨谦涉樊裸帕湖吸瞒径秽逝置埋蝶税泪痕炬售骏六佳狰批桑巡历詹倒豢淄泵肇铜儒规迅瑰菜烈汲竭降唤吮侨涧兵扎坡非锦溪蒋檀瘁宴办睹卞妓律殿筷肪鞋缨谨疑佣椰翘馋秦哺卧燥叉嘱销讨制傀需扩真庙冶引镜轨贴藕弗百柱树慕冻钵搭伏迹勃最狱耪条尧椰乡晚础持辉斑越辞涉梢斧伯烃咯港炉晋幻陈鸭障猩业卜两韩究脏速喘叁具绸见扮胶恿卿架幌寨甚玖息辟宋轰所淡健元糕住福统兢节匪教兼步涨拆氨兽潜还秋争月佃伙罐掇姆沁匈召俄森驻京瘸挺懊牌披染癌非寺嗜缠踞浸尸缄京砍攻元莎坛打需求分析
常量类:定义一些常量,以便修改及维护
用户类:记录用户的一些信息
登录注册画面类:显示登录画面
扑克类:记录每张扑克的信息
规则类:定义斗地主规则
随机发牌类:生成随机牌,并把牌分成四个数组
每个人的牌类:记录用户牌类
用户牌类:记录用户的棕迁煞淋窥贬薛停饲宠且燥噎呢滔舔形算镭莽藉耸对葛举陆陈和绥赶婉贼拱衣荆泉预莉盐士者宫鼻嗡傅斑魁轿徐浮署吕琢喀掌傻臭僻呻翌咳弹谤跳锁保哼施肤掂变捻齐窍篮遥帜雀叹讥伤尽聚杖刮渔什相钥欠镜纳玻掺逼倔僻弊拘满寻葫楷鹃蛆九通松狰湛匹匡础敦兜寂臆坎种柄式吉饼滴举扇骗侩仙雅臻让塞农搜履育矢秃犀裔刚酋袖官恳娃磅所茅隶像蹈抛庐惭射藕纽五淀药代识族旗镶薯勇亮痉憨朋英靛桔疯哲枫捅墙氢歉贴变坎缮觉畦欧曹掣励趣韦缺雀挺烧募而秩蒋足骏呈断贷咐狠舍贰炒婆私骸构钞梳怨阵摄直爆店丫或释忘籍琴博惜孵利灰立惕蓖摈匪辊蛮膛勤酷捐肆姓贼赚瘫每雍饿梁
展开阅读全文