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()
}
相关推荐
Kapaseker4 小时前
如果我要从 List 中获取一段元素
android·kotlin
alexhilton16 小时前
探究Android Views、Flutter和Compose如何渲染你的UI
android·kotlin·android jetpack
a11177621 小时前
中文优先的企业 RAG 知识库 开源项目
开发语言·开源·kotlin
Android-Flutter1 天前
Kotlin 冷流与热流详解
android·kotlin
Android-Flutter1 天前
OkHttp 总结
android·okhttp·kotlin
Kapaseker3 天前
别再只用 Loading、Success、Error 表示所有页面状态了
android·kotlin
雨白4 天前
深入理解 Kotlin 协程 (九):互通有无,解构 Channel 缓冲策略与底层无锁机制
android·kotlin
蜡台5 天前
Android WebView 设计指南
android·java·kotlin
Kapaseker5 天前
深入理解 Compose 副作用
kotlin
雨白6 天前
深入理解 Kotlin 协程 (八):拾遗补阙,探秘官方框架的调度细节与取消闭环
android·kotlin