Welcome 微信登录

首页 / 操作系统 / Linux / 理解Java对象的交互:时钟显示程序

实现: 结构:对象:时钟  - 对象:小时                - 对象:分钟
  • 小时和分钟具有相同属性(值,上限),可以用一个类Display来定义这两个对象;
  • 但是两者之间又具有联系(当分钟达到上限时,小时要加1),但两者同属于一个类里,不能产生直接联系,这时我们用另外一个类Clock来对它们进行管理;
  • 首先用Clock类来定义一个clock的对象,用它来管理两个Display类型的对象,也即是clock的成员变量(min,hour),来管理它们之间的关系,再做显示;
  • 总结:一个对象里有两个对象,或者 用一个对象来管理其他两个对象之间的关系。
package clock:
  • >>class Dispaly
  • >>class Clock
  1 package clock; 23 public class Display { 4 int value = 0; 5 int limit = 0; 67 Display(int limit) { 8 this.limit = limit; 9 }10 11 void increase() {12 ++ value;13 if(value == limit){14 value = 0;15 }16 }17 18 int getvalue() {19 return value;20 }21 22 public static void main(String[] args) {//test23 Display min = new Display(60);24 for(;;) {25 min.increase();26 System.out.println(min.getvalue());27 }28 }29 30 } Display.java  1 package clock; 23 public class Clock { 4 Display min = new Display(60); 5 Display hour = new Display(24); 67 void start() { 8 min.increase(); 9 if(min.getvalue()==0) {10 hour.increase();11 }12 }13 14 public static void main(String[] args) {15 Clock clock = new Clock();16 for(;;) {17 clock.start();18 System.out.printf("%02d:%02d ",clock.hour.getvalue(),clock.min.getvalue());19 }20 }21 22 }本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-10/136347.htm