학습 목표
- 내부 클래스의 기본 개념과 이점을 이해합니다.
- 선언 위치에 따라 내부 클래스의 유형과 속성을 이해하고 설명할 수 있습니다.
- 내부 클래스의 유형에 따른 유효 범위와 접근성을 이해할 수 있습니다.
1. 이너 클래스의 기본 개념
클래스 내에서 선언된 클래스, 외부 클래스를 참조하는 클래스
2. 내부 클래스의 장점
외부 클래스의 멤버에 쉽게 액세스할 수 있으며 코드 복잡성을 줄일 수 있습니다.
캡슐화
3. 선언 위치에 따른 내부 클래스의 유형 및 속성
| 유형 | 성명 | 사용 가능한 변수 |
| 인스턴스 내부 클래스 | 외부 클래스(내부 멤버 클래스)의 멤버 변수 선언 위치에 선언 | 외부 인스턴스 변수, 외부 전역 변수 |
| 정적 내부 클래스 | 외부 클래스(내부 멤버 클래스)의 멤버 변수 선언 위치에 선언 | 외부 전역 변수 |
| 로컬 내부 클래스 | 메서드 또는 외부 클래스의 초기화 블록 내부에 선언됨 | 외부 인스턴스 변수, 외부 전역 변수 |
| 익명 내부 클래스 | 클래스를 선언하고 동시에 객체를 생성하는 일회용 익명 클래스 | 외부 인스턴스 변수, 외부 전역 변수 |
4. 이너 클래스의 종류에 따른 유효 범위 및 접근성
> 인스턴스의 내부 클래스
외부 클래스의 모든 액세스 지정자의 액세스 멤버
외부 클래스 생성 후 사용해야 함
> 정적 내부 클래스
내부 클래스는 외부 클래스의 존재와 독립적으로 정적 변수를 사용할 수 있습니다.
