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()
}
相关推荐
alexhilton10 小时前
使用LoRA微调Gemma实现移动端推理
android·kotlin·android jetpack
hewence115 小时前
Kotlin协程启动方式详解
android·开发语言·kotlin
RdoZam16 小时前
Android-封装个好用、轻量和通用的原生Adapter基类
android·kotlin
智先森zhi17 小时前
实战:将 Android 多Module应用迁移到 kmp+cmp
android·ios·kotlin
hewence120 小时前
Kotlin CoroutineContext 详解
android·开发语言·kotlin
hewence11 天前
Kotlin初入协程
android·kotlin
我命由我123451 天前
Android多进程开发 - AIDL 最简单的实现、传递数据大小限制
android·java·java-ee·kotlin·android studio·android jetpack·android-studio
儿歌八万首2 天前
Android 全局监听神器:registerActivityLifecycleCallbacks 解析
android·kotlin·activity
Yang-Never2 天前
OpenGL ES ->图片纹理叠自定义View固定裁剪框,图片单指滑动回弹,双指缩放,裁剪框不带任何黑边
android·java·开发语言·kotlin·android studio
秋夜的笔记2 天前
Kotlin 中 Array 的扩展函数
kotlin