반응형
#혼공단 #혼공챌린지 #혼공자
혼공 챌린지_자바 4주차 선택 미션
p.539 문제 2번 풀이 인증샷
p.539 문제 2번 풀이 인증샷
동영상과 음악을 재생하기 위해 두 가지 스레드를 실행하려 합니다. 1~3번 빈칸에 적당한 코드를 넣어보세요
1번 빈칸
public class ThreadExample {
public static void main (String[] args) {
Thread thread1 = new MovieThread();
thread1.start();
Thread thread2 = new Thread( [ 1번 ] );
thread2.start();
}
}
//정답
new MusicRunnable()
Thread 클래스로부터 작업 스레드 객체를 직접 생성하려면 Runnalble을 매개값으로 갖는 생성자를 호출해야 한다.
Runnable은 인터페이스 타입이기에 구현 객체를 만든 후 대입하여야 한다.
Runnable은 실제 스레드가 아니므로 Runnable 구현 객체를 생성한 후 그것을 매개값으로 하여 Thread 생성자를 호출해야 작업 스레드가 생성된다.
2번 빈칸
public class MovieThread [ 2번 ] {
@override
public void run() {
for (int i = 0; i < 3; i++) {
System.out.println("동영상을 재생합니다.");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
}
}
}
}
}
//정답
extends Thread
작업 스레드가 실행할 작업을 Runnable로 만들지 않고 Thread의 하위 클래스로 작업 클래스를 정의하며 작업 내용을 포함시키려면
Thread class를 상속한 후 run() 메소드를 @override 해서 스레드가 실행할 코드를 작성하면 된다.
3번 빈칸
public class MusicRunnable [ 3번 ] {
@override
public void run () {
for (int i = 0; i < 3; i++) {
System.out.println("음악을 재생합니다.");
try {
Thread.sleep(1000);
}catch (InterruptedException e) {
}
}
}
}
//정답
implements Runnable
Runnable은 인터페이스 타입이다.
인터페이스 타입이기에 구현 객체를 만들어서 대입해야 한다.
구현 객체는 인터페이스 타입으로 사용할 수 있음을 알리기 위해 클래스 선언부에 implement 키워드를 추가하고 인터페이스 이름을 명시해야 한다.
반응형
'Language > [Java] 혼자 공부하는 자바' 카테고리의 다른 글
[#혼공챌린지] 혼자 공부하는 자바_5주차 선택미션 (0) | 2021.08.08 |
---|---|
[#혼공챌린지] 혼자 공부하는 자바_5주차 기본미션 (0) | 2021.08.08 |
[#혼공챌린지] 혼자 공부하는 자바_4주차 기본미션 (0) | 2021.08.01 |
[#혼공챌린지] 혼자 공부하는 자바_3주차 선택미션 (0) | 2021.07.25 |
[#혼공챌린지] 혼자 공부하는 자바_3주차 기본미션 (0) | 2021.07.25 |