[객체지향] 내부클래스

학습 목표

  • 내부 클래스의 기본 개념과 이점을 이해합니다.
  • 선언 위치에 따라 내부 클래스의 유형과 속성을 이해하고 설명할 수 있습니다.
  • 내부 클래스의 유형에 따른 유효 범위와 접근성을 이해할 수 있습니다.
1. 이너 클래스의 기본 개념
클래스 내에서 선언된 클래스, 외부 클래스를 참조하는 클래스
2. 내부 클래스의 장점
외부 클래스의 멤버에 쉽게 액세스할 수 있으며 코드 복잡성을 줄일 수 있습니다.
캡슐화
3. 선언 위치에 따른 내부 클래스의 유형 및 속성

유형 성명 사용 가능한 변수
인스턴스 내부 클래스 외부 클래스(내부 멤버 클래스)의 멤버 변수 선언 위치에 선언 외부 인스턴스 변수, 외부 전역 변수
정적 내부 클래스 외부 클래스(내부 멤버 클래스)의 멤버 변수 선언 위치에 선언 외부 전역 변수
로컬 내부 클래스 메서드 또는 외부 클래스의 초기화 블록 내부에 선언됨 외부 인스턴스 변수, 외부 전역 변수
익명 내부 클래스 클래스를 선언하고 동시에 객체를 생성하는 일회용 익명 클래스 외부 인스턴스 변수, 외부 전역 변수
4. 이너 클래스의 종류에 따른 유효 범위 및 접근성
> 인스턴스의 내부 클래스
외부 클래스의 모든 액세스 지정자의 액세스 멤버
외부 클래스 생성 후 사용해야 함
> 정적 내부 클래스
내부 클래스는 외부 클래스의 존재와 독립적으로 정적 변수를 사용할 수 있습니다.