반응형
중첩클래스
클래스 내부에 선언한 클래스
클래스가 여러 클래스와 관계를 맺는 경우에는 독립적으로 선언하는 것이 좋으나,
특정 클래스만 관계를 맺을 경우에는 중첩 클래스로 선언하는 것이 유지보수에 도움이 된다.
또한 클래스의 멤버(속성을 표현하는 필드(field) / 기능을 표현하는 메소드(method))를 쉽게 사용할 수 있고
외부에는 중첩 관계 클래스를 감춰서 코드의 복잡성을 줄일 수 있다.
종류
선언 위치에 따른 분류 | 선언 위치 | 객체 생성 조건 | |
멤버 클래스 | 인스턴스 멤버 클래스 |
|
A 객체를 생성해야만 B 객체를 생성 가능 |
정적 멤버 클래스 |
|
A 객체를 생성하지 않아도 B 객체 생성 가능 |
|
로컬 클래스 |
|
method가 실행할 때만 B 객체 생성 가능 |
장점
- 내부 클래스에서 외부 클래스의 멤버들을 쉽게 접근할 수 있다.
- 코드의 복잡성을 줄일 수 있다. (캡슐화)
반응형
'공부 > Java' 카테고리의 다른 글
[Java] 중첩 인터페이스 (0) | 2023.04.10 |
---|---|
[Java] 생성자나 메소드 내부에서 선언되는 로컬 클래스(local class) (0) | 2023.04.10 |
[Java] 조건문 정리 (비전공자 관점의 if문·중첩 if문) (0) | 2023.03.30 |
[Java] 자바의 변수 선언 (0) | 2023.03.29 |
[Java] 바이트코드 파일과 자바 가상 머신 (0) | 2023.03.29 |