Java · 객체지향·연습 문제

static 초기화 블록

문제 설명PROBLEM

static 초기화 블록

문제

static 초기화 블록에서 정한 기준값 10에 입력 offset을 더해 반환하세요.

구현할 함수

static int initializedValue(int offset)

입력

정수 offset이 주어집니다.

입력 파싱과 결과 출력은 숨겨진 I/O 어댑터가 자동으로 처리합니다. 에디터에는 요구된 함수 또는 메서드 구현만 작성하세요.

출력

static 블록에서 초기화한 10과 offset의 합을 출력합니다.

구현 조건

  • Holder에 static int base 필드를 선언하세요.
  • static 초기화 블록에서 base = 10으로 설정하세요.
  • initializedValue에서 Holder.base를 사용하세요.

공개 테스트

아래 테스트를 각각 독립된 프로세스로 실행합니다. 입력과 기대 출력은 실제 채점 순서와 같습니다.

#이름InputExpected output
1offset 0010
2양수 offset717
3음수 offset-15-5
개념 노트와 실수 포인트

객체지향

  • 생성자: 객체 생성 시 호출. this.x, this(...)(다른 생성자 호출).
  • 상속: 자식 생성자는 부모 생성자(super())를 먼저 실행.
  • 오버라이딩(재정의, 부모와 같은 시그니처) → 다형성: 참조형이 부모여도 실제 객체의 메서드 실행. 오버로딩은 같은 이름 + 다른 매개변수.
  • static모든 객체가 공유(클래스당 하나). static{} 블록은 로딩 시 1회.
  • abstract/interface 는 구현을 강제. instanceof 로 타입 확인.
  • ⚠️ Integer 캐싱: -128~127 은 같은 객체라 ==true, 그 밖(예: 200)은 false. 비교는 equals 가 안전.