인프런 커뮤니티 질문&답변

highjune님의 프로필 이미지
highjune

작성한 질문수

스프링 DB 1편 - 데이터 접근 핵심 원리

언체크 예외 기본 이해

static class 의 new 생성자

해결된 질문

작성

·

749

1

강의에서 중요한 부분은 아닙니다만,

 

CheckedTest 클래스와 UnCheckedTest 클래스 내부 클래스에서 각각 Service, Repository 클래스를 내부 static 으로 선언을 했잖아요?

 

그런데 static으로 선언되었음에도 두 클래스는, new Service(), new Repository() 로 생성이 되는 것이 이해가 안됩니다.

 

감사합니다.

답변 1

5

안녕하세요, highjune 님! 공식 서포터즈 codesweaver 입니다.

강의 예시와 같은 경우를 static nested class 라고 하는데요,

보통 inner class 는 종속 관계가 생깁니다. inner class를 감싸는 outer class를 생성하기 전에는 inner class를 생성할 수 없습니다.

그러나 static inner class는 outer 와 별개로 new 생성이 가능하다는 특징이 생깁니다.

강의에서도 간단하게 예시를 보이기 위해 static inner class를 사용하고 있습니다.



감사합니다.

highjune님의 프로필 이미지
highjune

작성한 질문수

질문하기