Runnable 인터페이스와 Thread Class
2013. 6. 5. 17:27ㆍProgramming/JAVA
자바에서 쓰레드를 만드는 방법은 크게 두 가지로 볼 수 있다.
1. Runnable 인터페이스를 구현하는 방법 과
2. Thread 클래스를 상속 받는 방법이다.
Thread 클래스 자체에서 Runnable 인터페이스를 구현하고 있기 때문에 두 가지 방식 중 어떤 것을 써도 무방하다.
하지만 대부분 Runnable 인터페이스를 사용한다.
왜??
JAVA에서는 C++과는 다르게 다중 상속이 안되기 때문이다. Thread Class를 상속 받을 경우 해당 클래스는 이제 더 이상 상속을 받을 수 있는 조건이 안되지만, Runnable 인터페이스를 상속 받을 경우엔 다른 인터페이스도 상속이 가능하다.
아래는 Runnable 인터페이스를 상속 받는 코드와 Thread 클래스를 상속 받는 코드이다.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class TestThread1 implements Runnable{ | |
// implement | |
public void run(){ | |
System.out.println("Start Test1 Thread"); | |
} | |
} | |
public class TestThread2 extends Thread{ | |
// override | |
public void run(){ | |
System.out.println("Start Test2 Thread"); | |
} | |
} |