4.1) OCJP/1Z0-851 / 2012-08-28

OCJP (1Z0-851 / 2012-08-28 / Exam B) - 19 번

kkikkodev 2015. 8. 28. 03:25



관련 이론 및 문법

(Thread 클래스 참고)

http://kkikkodev.tistory.com/141


(Runnable 인터페이스 참고)

http://kkikkodev.tistory.com/144


문제 의도

주어진 소스코드를 컴파일하여 실행한 결과를 고르는 문제입니다.


답안

C


풀이 방법

소스코드를 보면, 1 번 라인에 Threads5 클래스가 정의되어 있고, 그 안의 main 메소드가 있습니다. 프로그램이 실행되면, 3 번 라인의 Thread 를 생성하면서 매개변수로 익명 클래스인 Runnable 인터페이스 객체를 생성하여 넘겨줍니다. 익명 클래스이기 때문에 생성하면서 동시에 추상 메소드 또한 함께 overriding 해야 합니다. Runnable 인터페이스는 추상 메소드로 run 메소드를 가지고 있으므로, run 메소드를 overriding 하면서 화면에 "bar" 문자열을 출력하고 있습니다. 마지막으로, 6 번 라인에서 생성된 Thread 객체의 start 메소드를 호출하고 있습니다. Thread 의 start 메소드가 호출되면 run 메소드가 자동으로 불려집니다. 그리고 화면에 "bar" 가 출력됩니다.


따라서 답안은 C 가 됩니다.