728x90
반응형
요약
- 클래스 안에 클래스를 넣는 방식
- 하나의 클래스가 다른 클래스의 기능과 강하게 연관되어 있다는 의미를 전달하기 위해 만들어진 형식
- 사용 시..
외부 클래스 . 중첩(내부) 클래스- 중첩 클래스는 외부 클래스 안에 존재하지만외부 클래스와는 내용을 공유할 수 없음
- 내부 클래스는 외부 클래스 안에 존재하며
외부 클래스와 내용을 공유하며
사용 시 반드시 외부클래스의 참조가 필요함
‘inner’ 키워드를 사용하여 구현되어야함
코드
fun main() {
outer.nested().introduce()
println()
val outer=outer()
val inner =outer.inner()
inner.introduceInner()
inner.introduceOuter()
println()
outer.text="changed outer class"
inner.introduceOuter()
}
class outer {
var text="outer class"
class nested{
fun introduce(){
println("nested class")
}
}
inner class inner{
var text="inner class"
fun introduceInner(){
println(text)
}
fun introduceOuter(){
println(this@outer.text)
}
}
}
728x90
반응형
'Kotlin' 카테고리의 다른 글
[ Kotlin ] Enum Class (0) | 2023.01.06 |
---|---|
[ Kotlin ] Data Class (0) | 2023.01.04 |
[ Kotlin ] 동일성 (0) | 2022.12.30 |
[ Kotlin ] null 처리 (0) | 2022.12.28 |
[ Kotlin ] 문자열 관련 함수 (0) | 2022.12.26 |