Java兩種延遲方法及區別

java中有兩種常用的延遲方法。

一是使用通過實例化Timer對象實現,如下:

Timer timer = new Timer();
        timer.schedule(new TimerTask() {
			public void run() {	
            System.out.println("延遲1.5s");        
            //延遲特定時間後執行該語句(public void run()的花括號裏的語句)        
        } }, 1500);        //這裏的數字1500意思是延遲1500毫秒

可以看到:

public void run(){}中的語句即時延遲特定時間後所執行的語句,後面的數字爲延遲時間,單位:毫秒。

二是使用Thread類的方法,如下:

Thread.currentThread();
Thread.sleep(2333);        //延遲2333毫秒

這種方法是全局性的,即只要某一個類裏面使用了該延遲語句,運行這個類時就會先執行該延遲語句,再執行該類的其它語句。

而上面的第一種方法(Timer)就與此不同,即Timer不會對全局造成影響,即運行這個類時,會先執行Timer上面的其它語句(即按照正常順序),再執行Timer裏面設定的延遲後執行的語句(即上述的public void run()裏的語句),再向下執行語句。

所以大家使用的時候要有所區別。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章