@클래스안에 만드는 클래스를 중첩 클래스라고 한다

- 내부의 클래스는 외부의 클래스의 객체를 통해서만 객체를 생성할 수 있다.

- 외부의 클래스는 내부의 클래스 멤버를 사용할 수 없고 내부의 클래스는 외부의 클래스 멤버를 사용할 수 있다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
fun main(args : Array<String>){
    var a1 = Outer1()
    var a2 = a1.outer_member
    println(a2)
    var a3 = Outer1().inner1()
    var a4 = a3.inner_member
    println(a4)
}
 
class Outer1{
 
    var outer_member = 100
 
    inner class inner1{
        var inner_member = 200
 
        fun inner_method(){
            println(outer_member)
        }
    }
 
    fun outer_method(){
 
    }
}
cs


결과:

100

200

'코틀린' 카테고리의 다른 글

익명 중첩 클래스  (0) 2018.11.26

+ Recent posts