Java - 문제 미리보기

문제 2403

medium
Thread 클래스 상속 vs Runnable 인터페이스 구현의 가장 중요한 차이점은?
A. 성능 차이가 있다
B. Thread 상속은 다른 클래스를 상속받을 수 없지만, Runnable 구현은 가능하다
C. Runnable은 예외 처리가 더 복잡하다
D. Thread 상속이 더 많은 메모리를 사용한다

정답: B

이는 Java의 단일 상속 제약과 관련된 핵심적인 차이점입니다. Java 단일 상속의 제약: ⦁ Java에서 클래스는 하나의 클래스만 상속받을 수 있음 ⦁ 인터페이스는 여러 개 구현 가능 ⦁ 이 제약이 Thread 설계에 중요한 영향을 미침 Thread 클래스 상속의 제약: ```java // 불가능한 코드 - 컴파일 에러 public class DataProcessor extends DatabaseConnection, Thread { // Java는 다중 상속을 지원하지 않음 } // Thread 상속 시 다른 클래스 상속 불가 public class MyThread extends Thread { // 이미 Thread를 상속받았으므로 다른 클래스 상속 불가 public void run() { System.out.println("스레드 실행"); } } ``` Runnable 인터페이스 구현의 유연성: ```java // 가능한 코드 - 클래스 상속 + 인터페이스 구현 public class DataProcessor extends DatabaseConnection implements Runnable { // DatabaseConnection 클래스 상속 // Runnable 인터페이스 구현 public void run() { // 스레드 실행 코드 processData(); // 부모 클래스의 메서드 사용 가능 } } // 사용 방법 DataProcessor processor = new DataProcessor(); Thread thread = new Thread(processor); thread.start(); ```

💡 학습 팁

이 문제를 포함한 Java 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.