2013-08-31 78 views
0

所以如果我想要我的某項活動在某個特定時間做某件事,我該怎麼做? 任何快速描述將是有幫助的。我仍然是非常新的在這個和任何幫助非常感謝。如何讓我的活動在特定時間做某件事

+0

你在做什麼平臺?你有什麼嘗試過自己? – laalto

回答

1

如果您希望您的活動在某個井間運行,則可以使用java中的線程。 如果活動想要在某個準備時間運行,則可以在java中使用TimerTask類。

import java.util.Calendar; 
import java.util.Date; 
import java.util.Timer; 
import java.util.TimerTask; 

public class ReportGenerator extends TimerTask { 

    public void run() { 
    System.out.println("Generating report"); 
    //TODO generate report 
    } 

} 

class MainApplication { 

    public static void main(String[] args) { 
    Timer timer new Timer(); 
    Calendar date = Calendar.getInstance(); 
    date.set(
     Calendar.DAY_OF_WEEK, 
     Calendar.SUNDAY 
    ); 
    date.set(Calendar.HOUR, 0); 
    date.set(Calendar.MINUTE, 0); 
    date.set(Calendar.SECOND, 0); 
    date.set(Calendar.MILLISECOND, 0); 
    // Schedule to run every Sunday in midnight 
    timer.schedule(
     new ReportGenerator(), 
     date.getTime(), 
     1000 * 60 * 60 * 24 * 7 
    ); 
    // Schedule to run every Monday in midnight 
    date.set(
     Calendar.DAY_OF_WEEK, 
     Calendar.MONDAY 
    ); 
    date.set(Calendar.HOUR, 0); 
    date.set(Calendar.MINUTE, 0); 
    date.set(Calendar.SECOND, 0); 
    date.set(Calendar.MILLISECOND, 0); 

    timer.schedule(
     new ReportGenerator(), 
     date.getTime(), 
     1000 * 60 * 60 * 24 * 7 
    ); 
    } 
} 
+0

快速問題,什麼是Calendar.getInstance()。它有什麼作用 ?並非常感謝回覆:D – alaboudi

+0

Calender.getInstance()用於創建單例類。 意味着只有一個 類的實例將被創建,其他 將獲得該類的引用。 –

+0

所以Calendar是singleton class =只存在該類的一個實例。涼!那麼如果你在不同的時間發生多個警報或通知,你會怎麼做?我以爲id只是打另一個實例? – alaboudi

相關問題