what?
특정한 시간에 코드를 실행하거나 작업이 특정 시간 간격으로 반복되게 함
why?
사용하지 않으면 코드는 순차적으로만 실행됨
how?
1)TimerTask를 상속하는 새로운 클래스 선언
2)TimerTask 클래스의 run 추상 메서드 오버라이딩
Class Work1 extendsTimerTask{
@Override
public void run(){
System.out.println("work1 실행");
}
}
3)Timer 객체 생성, 원하는 시간을 파라미터로 작성
Timer t = new Timer(true); //true: 프로그램 종료시 객체 사라짐
TimerTask w1 = new Work1();
t.schedule(w1, 5000); //5초 뒤 실행
예제
class Work1 extends TimerTask{
@Override
public void run(){
System.out.println("work1 실행");
}
}
class Work2 extends TimerTask(){
@Override
public void run(){
System.out.println("work2 실행");
}
}
public class Timer1{
public static void main(String[] args) throws Exception{
Timer t = new Timer(true);
TimerTask w1 = new Work1();
TimerTask w2 = new Work2();
t.schedule(w1, 3000); //3초 뒤 w1의 run() 실행
t.schedule(w2, 1000); //1초 뒤 w1의 run() 실행
Thread.sleep(4000); //종료하지 않고 4초간 대기
System.out.println("모든 작업 종료");
}
}
'Java' 카테고리의 다른 글
[Java] 기본 API 클래스⑨ Object (0) | 2024.04.07 |
---|---|
[Java] 기본 API 클래스⑧ Format (0) | 2024.04.06 |
[Java] 기본 API 클래스⑥ Wrapper 클래스 (0) | 2024.04.04 |
[Java] 기본 API 클래스⑤ BigDecimal 클래스 (0) | 2024.04.03 |
[Java] 기본 API 클래스③ Random (0) | 2024.04.03 |