32.3 Analyze the following code: ``` public abstract class Test implements Runnable { public void doSomething() { }; } ``` A. The program will not compile because it does not implement the run() method. B. The program will not compile because it does not contain abstract methods. **C. The program compiles fine.** D. None of the above. 정답은 C입니다. runnable을 interface하는 경우 run() 메소드는 오버라이드를 해야하는 걸로 알고있습니다. 그래서 답이 A라고 생각했는데, 이해가 잘 안되서 질문드립니다. 감사합니다.
# abstract 클래스 ## 요약 abstract 클래스는 implements 한 인터페이스의 메소드를 오버라이딩 하지 않아도 됩니다. ## cf abstract 키워드를 삭제하면 에러가 나는 것을 확인할 수 있어요.