관련 이론 및 문법

(열거형 (enumeration) 참고)

http://kkikkodev.tistory.com/131


문제 의도

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


답안

A


풀이 방법

소스코드를 살펴보면, 11 번 라인에는 열거형 Title 이 정의되어 있습니다. 12 번 라인에는, 열거형 값들이 MR, MRS, MS 로 정의되어 있고, 13 라인에는, 멤버변수 title 이 있습니다. 또, 14 라인에는 생성자가 있고, 15 라인에는, format 이라는 메소드가 있는데, 매개변수로 last, first 를 받아서, 멤버변수 title 에 first 와 last 를 덧붙여 리턴해주고 있습니다.


실행하면, 20 라인의 main 메소드가 호출되고, 21 라인에서, Title.MR.format("Doe", "John") 을 화면에 출력하게 됩니다. 먼저, Title.MR 이 호출되면, 자동적으로 열거형 Title 의 생성자가 호출됩니다. 따라서, 14 라인이 실행되어, 멤버변수 title 에 "Mr." 이 저장되게 됩니다. 그리고, .format("Doe", "John") 을 호출하면, 15 번 라인이 실행되고, title ("Mr.") 에 first ("John") 과 last ("Doe") 를 덧붙여 반환하게 됩니다. ("Mr. John Doe")


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


by kkikkodev 2015. 9. 2. 15:24