4.1) OCJP/1Z0-851 / 2012-08-28
OCJP (1Z0-851 / 2012-08-28 / Exam A) - 35 번
kkikkodev
2015. 7. 26. 19:09
관련 이론 및 문법
(assertion 참고)
http://kkikkodev.tistory.com/108
문제 의도
주어진 Donkey2 클래스를 2 번 실행시킬 건데, 첫 번째는, assertion 옵션을 켜지 않고, 실행하고, 두 번째는, assertion 옵션을 켜고 실행했을 때의 출력 결과를 고르는 문제입니다.
답안
C
풀이 방법
assertsOn 변수가 true 값이고, 먼저, assert 옵션이 OFF 상태라면, assert 문장이 아예 실행이 안 될것입니다. 따라서, assert 문장을 건너뛰고, 바로 if 문으로 가서 "assert is on" 을 화면에 출력하게 됩니다.
만약, assert 옵션이 ON 상태라면, assert 조건문을 체크하는데, assertsOn 은 현재 true 이기 때문에, 만약 이것이 false 였다면, 우측의 assertsOn = true; 문장을 실행한 다음에, AssertionError 를 출력하면서, assertsOn 변수 값인 true 도 출력했을 것입니다. 하지만, 조건이 참이기 때문에 건너 뛰고 바로 if 문으로 내려가서 "assert is on" 을 화면에 출력하게 됩니다.
따라서 답안은, 모두 "assert is on" 을 출력하기 때문에 C 가 됩니다.