idghst.dev
article thumbnail
Published 2023. 1. 2. 09:00
[ Kotlin ] 중첩 클래스 Kotlin
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
profile

idghst.dev

@idghst.dev

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!