[Android APP] feat. Kotlin/Kotlin 언어 기초
27. 중첩, 내부 클래스
JuJu(INTJ)
2022. 3. 13. 00:52
중첩 클래스 : 다른 클래스 안에 생성된 클래스
내부 클래스 : 키워드 inner를 사용한 다른 클래스 안의 클래스
중첩 클래스(Nested class)
1. 다른 클래스 안에 생성되어 자동으로 정적이다.
2. 데이터 멤버와 멤버 함수는 클래스 객체를 생성하지 않고도 접근할 수 있다.
(객체를 만들지 않고, 함수와 멤버를 사용할 수 있는 클래스이다.)
3. 중첩 클래스는 외부 클래스의 데이터 멤버에 접근할 수 없다. (외부 클래스는 중첩 클래스 멤버에 접근할 수 있다)
내부 클래스(Inner class)
1. 키워드 inner로 다른 클래스 안에 만들어진 클래스이다.
2. inner라고 표시된 중첩 클래스가 내부 클래스이다.
3. 중첩 클래스와의 차이점은 인터페이스 안에 또는 중첩 클래스가 아닌 곳에 선언될 수 없다는 점이다.
4. private이더라도 외부 클래스 멤버에 접근할 수 있다.
5. 내부 클래스는 외부 클래스 객체의 참조를 저장한다.
반응형