时、秒 类:
public class Display {
private int value = 0;
private int limit = 0;
Display(int limit)
{
this.limit=limit;
}
void increase()
{
value++;
if(value == limit)
{
value = 0;
}
}
int getValue()
{
return value;
}
/*public static void main(String[] args)
{
Display d=new Display(24);
for(;;)
{
d.increase();
System.out.println(d.getValue());
}
}*/
}
时钟类:
public class Clock {
private Display hour = new Display(24);
private Display minute = new Display(60);
void start()
{
while(true)
{
minute.increase();
if(minute.getValue() == 0)
{
hour.increase();
}
System.out.printf("%02d:%02d\n", hour.getValue(),minute.getValue());
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void main(String[] args)
{
Clock clock = new Clock();
clock.start();
}
}
我在这里把分当做秒来处理(线程睡1秒,分增加1);