Kotlin 嵌套类和内部类

文章目录

嵌套类

在类的内部可以定义其他的类,这是类结构上的嵌套(Nested)。

kt 复制代码
class Container {
    val name = "Container"

    class NestedClass {
        fun getter() {
            // 此时无法访问外部类的成员
            // name
        }
    }
}

Note:接口也能嵌套。

内部类

内部类同样位于类内部,使用inner修饰。除了结构上嵌套外,内部类还能访问外部类的成员。

kt 复制代码
class Container {
    val name = "Container"

    inner class InnerClass {
        fun getter() {
            // 此时可以访问外部类的成员
            name
        }
    }
}

内部类只能使用外部类的对象调用实例化(普通嵌套类此限制):

kt 复制代码
fun main() {
    // Container.InnerClass() 不能使用
    Container().InnerClass()
}
相关推荐
alexhilton1 小时前
理解Jetpack Compose中副作用函数的内部原理
android·kotlin·android jetpack
人生游戏牛马NPC1号6 小时前
学习Android(四)
android·kotlin
百锦再7 小时前
Kotlin学习基础知识大全(上)
android·xml·学习·微信·kotlin·studio·mobile
louisgeek7 小时前
Kotlin 协程 launch 和 async 的区别
kotlin
张可10 小时前
历时两年半开发,Fread 项目现在决定开源,基于 Kotlin Multiplatform 和 Compose Multiplatform 实现
android·前端·kotlin
xiangxiongfly91512 小时前
Kotlin 边界限制
kotlin·coercein
百锦再17 小时前
Java与Kotlin在Android开发中的全面对比分析
android·java·google·kotlin·app·效率·趋势
喵手1 天前
从 Java 到 Kotlin:在现有项目中迁移的最佳实践!
java·python·kotlin
居然是阿宋1 天前
Kotlin高阶函数 vs Lambda表达式:关键区别与协作关系
android·开发语言·kotlin
wangz761 天前
kotlin的kmp编程中遇到Unresolved reference ‘java‘问题
kotlin·kmp