62,614
社区成员
发帖
与我相关
我的任务
分享
package thread;
//把继承的applet改写成 import java.applet.Applet;有意义上的区别么?
import java.awt.Graphics;
import java.util.*;
public class Clock extends java.applet.Applet implements Runnable {//实现接口
Thread clockThread;
public void start() { //该方法是Applet的方法,不是线程的方法
if (clockThread == null) {
clockThread = new Thread(this, "Clock");
/*线程体是Clock对象本身,线程名字为"Clock"*/
clockThread.start();//启动线程
}
}
@Override
public void run() {//run()方法中是线程执行的内容
// TODO Auto-generated method stub
while (clockThread != null){
repaint();//刷新显示画面
try {
clockThread.sleep(1000);//睡眠1秒,即每隔1秒执行一次
} catch (InterruptedException e){}
}
}
public void paint(Graphics g) {
Date now = new Date(); //获得当前的时间对象
g.drawString(now.getHours() + ":" + now.getMinutes()+ ":" +now.getSeconds(), 5, 10);//显示当前时间 为什么eclipse要我改写成int hours=now.getHours ?
}
public void stop() {
//该方法是Applet的方法,不是线程的方法
clockThread.stop();
clockThread = null;
}
}