这里的 Nested 类 Outer 的嵌套类,调用嵌套类的方法是 Outer.Nested()
class Outer {
private val bar: Int = 1
class Nested {
fun foo() = 2
}
}
val demo = Outer.Nested().foo() /
22616882_010_a.jpeg
class Outer{
private val bar:Int = 1
class Nested{
fun foo() = bar
}
}
在 foo 方法中是无法访问到 Outer 的 bar 属性的。
class Outer{
private val bar:Int = 1
inner class Nested{
fun foo() = bar
}
}
fun main(args: Array<String>) {
val demo = Outer().Nested().foo()
println(demo)
}
当我们用 inner 修饰符来修饰 Nested class 这样就变成内部类。这样 Nested 类就能访问到 Outer 的 bar 属性,调用方式 Outer().Nested().foo()
Learn-a-Programming-Language-Step-24.jpg
网友评论