잘 정리한 글을 참고해 작성했습니다 🙂
다양한 이름을 갖는 클래스들의 특징을 잘 모르면 이해하기 다소 어려울 수 있었던 아이템인 것 같다.
결국 멤버 클래스를 static으로 왜 만들어야 하는가를 알면 되는데,
아이템 소개 시작은 ‘중첩 클래스’에 대한 설명으로 시작한다.
다른 클래스 안에 정의된 클래스를 말한며 4가지로 나뉜다.
정적 멤버 클래스
는 바깥 클래스의 private 멤버에 접근 가능하다. 비정적 멤버 클래스와 코드 상에서 static의 유무만 보일 수 있으나 의미상 차이는 더 크다.
비정적 멤버 클래스
는 바깥 클래스와 암묵적으로 연결된다. 비정적 멤버 클래스의 인스턴스 메서드에서 정규화된 this를 통해 바깥 인스턴스를 참조할 수 있다.