logo资料库

2. 定义一个Card类,表示扑克牌,该类包括下述成员.docx

第1页 / 共5页
第2页 / 共5页
第3页 / 共5页
第4页 / 共5页
第5页 / 共5页
资料共5页,全文预览结束
1. 自己定义一个时间类,类名为 MyTime,有三个整型成员,时 hour,分 minute,秒 second, 为了保证数据的安全性,这三个成员变量应声明为私有,提供对外公共函数,并验证有 效性。为 MyTime 类定义构造方法,以方便创建对象时初始化成员变量。再定义 toString 方 法 , 用 于 将 时 间 信 息 打 印 出 来 为 Mytime 类 添 加 以 下 方 法 addSecond(int sec),addMinute(int min),addHour(int sec),subMinute(int min),subHour(int hour)。分别对时、分、秒进行加减运算。 subSecond(int hour), Mytime 类: package until3; public class MyTime { private int hour; private int minute; private int second; public MyTime(int hour,int minute,int second) { setHour(hour); this.hour=hour; this.minute=minute; this.second=second; } public void display(MyTime time) { System.out.println(time.getHour()+":"+time.getMinute()+":"+time.getSecond()); } public int getHour() { return hour; } public void setHour(int hour) { if(hour>0&&hour<=24) this.hour=hour; else System.out.println("时间出现错误!"); } public int getMinute() { return minute; } public void setMinture(int minture) { this.minute=minute; } public int getSecond()
{ return second; } public void setSecond(int second) { this.second=second; } public void addHour(int hou) { this.hour=hour+hou; if(hour>=24) hour=hour-24; } public void addMinute(int min) { this.minute=minute+min; if(minute>=60) { addHour(1); minute=minute-60; } } public void addSecond(int sec) { this.second=second+sec; if(second>=60) { addMinute(1); second=second-60; } } public void subHour(int hou) { this.hour=hour-hou; if(hou<0) { hour=hour+24; } } public void subMinute(int min)
{ this.minute=minute-min; if(minute<0) { subHour(1); minute=minute+60; } } public void subSecond(int sec) { this.second=second-sec; if(second<0) { subMinute(1); second=second+60; } } } Test 主函数: package until3; public class Text { public static void main(String[] args) { // TODO Auto-generated method stub MyTime newTime=new MyTime(2,54,51); newTime.display(newTime);//打印原始时间 System.out.println("2:54:51+17:10:9 为:"); newTime.addHour(17); newTime.addMinute(10); newTime.addSecond(9); newTime.display(newTime);//输出最终时间 System.out.println("2:54:51-1:1:41 为:"); MyTime newTime1=new MyTime(2,54,51); newTime1.subHour(1); newTime1.subMinute(1); newTime1.subSecond(41); newTime1.display(newTime1);//输出最终时间 } } 运行结果:
2. 定义一个 Card 类,表示扑克牌,该类包括下述成员: (1) 有两个 private 访问权限的字符串变量 face 和 suit。face 描述一张牌的牌面值(如: A、K、Q、J、10、9、8、7、6、5、4、3、2 等),suit 描述一张牌的花色(如: “梅花”、“黑桃”、“红桃”、“方块”)。 (2) 有一个 public 访问权限的构造方法,为类中的两个变量赋值 (3) 有一个 protected 访问权限的方法 getFace(),得到扑克牌的牌面值 (4) 有一个 protected 访问权限的方法 getSuit(),得到扑克牌的牌面值 (5) 有一个重写方法 toString(),返回表示扑克牌的花色和牌面值字符串(如:“红桃 A”,“方块 J”) 扩展:生成一副扑克牌,实现比大小函数 Crad 类: package until3; public class Crad { private String face; private String suit; public void setFace(String face) { if(face=="A" || face=="K" || face=="Q" || face=="J" || face=="10" || face=="9" || face=="8" ||face=="7" ||face=="6" || face=="5" || face=="4" || face=="3" || face=="2" ) this.face = face; } public void setSuit(String suit) { if(suit=="黑桃" || suit=="红桃" || suit=="梅花" || suit=="方块" ) this.suit = suit; } protected String getFace() { return face; } protected String getSuit() { return suit; } public String toString()
return (suit+face); { } } Test3 主函数: package until3; public class Test3 { public static void main(String[] args) { // TODO Auto-generated method stub Crad c = new Crad(); c.setSuit("红桃"); c.setFace("A"); System.out.println(c.toString()); } } 运行结果:
分享到:
收藏