2026 국가직9급 컴퓨터일반 16번 해설 — Java 초기화 순서

정답 ④번출제 쟁점 Java 초기화 순서발문 옳은 것 고르기

문제

다음 Java 프로그램의 출력 결과는? class ClassA { ClassA() { System.out.print("1"); } static { System.out.print("4"); } } public class ClassB extends ClassA { ClassB() { System.out.print("2"); } public static void main(String[] args) { System.out.print("3"); new ClassB(); } }

  1. 32
  2. 432
  3. 3214
  4. 4312 컴퓨터일반 ← 정답

선지별 해설

32

이 선지 진술은 틀림(X)

main 실행 전 상위 클래스의 static 블록이 먼저 실행되어 4가 출력되고, 이후 3, 1, 2가 이어진다.

432

이 선지 진술은 틀림(X)

객체 생성 시 부모 생성자가 먼저 실행되어 1이 출력되고 그다음 자식 생성자의 2가 출력된다. 전체 출력은 4312이다.

3214

이 선지 진술은 틀림(X)

클래스 초기화의 static 블록이 main 본문보다 먼저 실행된다. 따라서 4가 3보다 앞에 온다.

4312 컴퓨터일반

이 선지 진술은 옳음(O)

ClassB 초기화 전에 ClassA의 static 블록이 4를 출력하고, main의 3 뒤에 ClassA 생성자 1, ClassB 생성자 2가 출력된다.

핵심 요약 (Q&A)

Q. 2026 국가직9급 컴퓨터일반 16번의 핵심 쟁점은 무엇인가?
A. 2026 국가직9급 컴퓨터일반 16번은 Java 초기화 순서에 관한 문항으로, "옳은 것"을 고르는 문제입니다.
Q. 2026 국가직9급 컴퓨터일반 16번의 정답은?
A. 정답은 ④번입니다. ClassB 초기화 전에 ClassA의 static 블록이 4를 출력하고, main의 3 뒤에 ClassA 생성자 1, ClassB 생성자 2가 출력된다.
🧩 프로그래밍 개념·기출 모아보기📄 2026 국가직9급 컴퓨터일반 전체 문항✏️ 이 시험 미니문제 풀기
출처: 2026 국가직9급 컴퓨터일반 기출 (원문 보존)해설 기준: 출제 당시 법령·판례 · 개정 사항은 ⚠️ 표시