[Kotlin] 중첩 클래스와 내부 클래스


[Kotlin] 중첩 클래스와 내부 클래스

중첩 클래스는 하나의 클래스가 다른 클래스의 기능과 강하게 연관되어 있다는 의미를 전달하기 위해 만들어진 형식으로 사용할 때는 Outer.Nested()와 같이 외부클래스이름.중첩클래스이름으로 사용하게 된다. class Outer{ class nested{ } } Outer.Nested() 이 때 중첩 클래스 대신 내부 클래스라는 것을 사용할 수도 있다. class 앞에 inner를 붙인 내부 클래스는 혼자서 객체를 만들수는 없고 외부 클래스의 객체가 있어야만 생성과 사용이 가능한 클래스이다. class Outer{ inner class nested{ } } 중첩 클래스는 형태만 내부에 존재할 뿐 실질적으로는 서로 내용을 공유할 수 없는 별개의 클래스인 반면, 내부 클래스는 외부 클래스 안에서 사용되는 클래스이므로 외부 클래스의 속성과 함수의 사용이 가능하다. fun main() { Outer.Nested().introduce() val outer = Outer() val inner...


#안드로이드 #안드로이드앱 #앱 #코딩 #코틀린

원문링크 : [Kotlin] 중첩 클래스와 내부 클래스