java瀹氭椂浠诲姟鏃堕棿鎬庝箞璁剧疆
鍦↗ava涓紝鍙互浣跨敤java.util.Timer鍜?code>java.util.TimerTask绫绘潵璁剧疆瀹氭椂浠诲姟鐨勬椂闂淬€?/p>
棣栧厛锛屽垱寤轰竴涓户鎵胯嚜TimerTask鐨勫瓙绫伙紝閲嶅啓run()鏂规硶锛屽畾涔夊畾鏃舵墽琛岀殑浠诲姟銆?/p>
鐒跺悗锛屽垱寤轰竴涓?code>Timer瀵硅薄锛屽苟璋冪敤schedule()鏂规硶鏉ヨ缃畾鏃朵换鍔$殑鎵ц鏃堕棿鍜岄棿闅旀椂闂淬€?code>schedule()鏂规硶鏈夊涓噸杞藉舰寮忥紝鍏朵腑涓€涓父鐢ㄧ殑褰㈠紡鏄?code>schedule(TimerTask task, Date time)锛岀敤浜庤缃换鍔″湪鐗瑰畾鏃ユ湡鍜屾椂闂存墽琛屻€?/p>
浠ヤ笅鏄竴涓ず渚嬩唬鐮侊紝婕旂ず濡備綍璁剧疆姣忓ぉ鐨勫浐瀹氭椂闂存墽琛屽畾鏃朵换鍔★細
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class ScheduledTask extends TimerTask {
@Override
public void run() {
// 鎵ц瀹氭椂浠诲姟鐨勪唬鐮?/span>
System.out.println("瀹氭椂浠诲姟鎵ц鏃堕棿锛?quot; + new Date());
}
public static void main(String[] args) {
// 鍒涘缓涓€涓狢alendar瀵硅薄锛岀敤浜庤缃畾鏃朵换鍔$殑鎵ц鏃堕棿
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 8); // 璁剧疆灏忔椂
calendar.set(Calendar.MINUTE, 0); // 璁剧疆鍒嗛挓
calendar.set(Calendar.SECOND, 0); // 璁剧疆绉掗挓
// 鑾峰彇瀹氭椂浠诲姟鐨勬墽琛屾椂闂?/span>
Date time = calendar.getTime();
// 鍒涘缓涓€涓猅imer瀵硅薄
Timer timer = new Timer();
// 璁剧疆瀹氭椂浠诲姟鐨勬墽琛屾椂闂村拰闂撮殧鏃堕棿
timer.schedule(new ScheduledTask(), time, 24 * 60 * 60 * 1000); // 姣忛殧24灏忔椂鎵ц涓€娆?/span>
}
}
鍦ㄤ笂杩扮ず渚嬩腑锛屽畾鏃朵换鍔$殑鎵ц鏃堕棿琚缃负姣忓ぉ鐨?鐐广€?code>schedule()鏂规硶鐨勭涓€涓弬鏁版槸涓€涓?code>TimerTask瀵硅薄锛岃〃绀鸿鎵ц鐨勪换鍔★紱绗簩涓弬鏁版槸涓€涓?code>Date瀵硅薄锛岃〃绀轰换鍔$殑鎵ц鏃堕棿锛涚涓変釜鍙傛暟鏄竴涓?code>long绫诲瀷鐨勫€硷紝琛ㄧず浠诲姟鐨勯棿闅旀椂闂淬€?/p>
闇€瑕佹敞鎰忕殑鏄紝Timer绫诲拰TimerTask绫婚兘浣嶄簬java.util鍖呬腑锛岄渶瑕佽繘琛岀浉搴旂殑瀵煎叆銆傚彟澶栵紝Timer绫绘槸绾跨▼瀹夊叏鐨勶紝鍙互鍚屾椂瀹夋帓澶氫釜瀹氭椂浠诲姟銆?/p>