在Java.util包中有一個TimerTask類,你可以擴展這個類並且實現他的run()方法,在run()方法中編寫我們的邏輯代碼。假如我們想制作一個游戲時鐘,那麼非常簡單我們編寫一個GameClock類擴展TimerTask,GameClock需要維持一個實例變量timeLeft,這樣我們就可以記錄游戲剩余的時間了,在每次run()運行的時候把timeLeft減1就可以了。有時候我們需要始終暫停以及重新啟動,這並不復雜,在GameClock中添加一個boolean類型的標記就可以了。下面給出GameClock的代碼:
/*
* GameClock.java
*
* Created on 2005年7月18日, 上午11:00
*
* To change this template, choose Tools Options and locate the template under
* the Source Creation and Management node. Right-click the template and choose
* Open. You can then make changes to the template in the Source Editor.
*/
package com.j2medev.gameclock;
import java.util.TimerTask;
/**
*
* @author Administrator
*/
public class GameClock extends TimerTask{
private int timeLeft = 60;//時鐘的默認時間
private boolean pause = false;
/** Creates a new instance of GameClock */
public GameClock() {
}
public GameClock(int value){
timeLeft = value;
}
public void run(){
if(!pause){
timeLeft--;
}
}
public void pause(){
pause = true;
}
public void resume(){
pause = false;
}
public int getTimeLeft(){
return timeLeft;
}
public void setTimeLeft(int _value){
this.timeLeft = _value;
}
}