kotlin when interface‘s field set/get

kotlin when interface's field set/get

Kotlin 复制代码
interface Listener {
    var num: Int
    fun number(n: Int)
}

class MyListener : Listener {
    override var num: Int = -1
        get() = field
        set(value) {
            field = value
        }

    override fun number(n: Int) {
        num = n
    }
}

fun main(args: Array<String>) {
    var l1 = MyListener()
    l1.number(1)

    var l2 = MyListener()
    l2.number(2)

    var ls = ArrayList<MyListener>()
    ls.add(l1)
    ls.add(l2)

    for (l in ls) {
        when (l) {
            l1 -> {
                println("l1->{${l1.num}}")
            }

            l2 -> {
                println("l2->{${l2.num}}")
            }

            else -> {
                println("else->${l.num}")
            }
        }
    }
}

l1->{1}

l2->{2}

kotlin类成员变量字段field的get/set_zhangphil的博客-CSDN博客kotlin类成员变量字段field的get/set。https://blog.csdn.net/zhangphil/article/details/129233934

相关推荐
用户0913 小时前
Android View 事件分发机制详解及应用
android·kotlin
ForteScarlet13 小时前
Kotlin 2.2.20 现已发布!下个版本的特性抢先看!
android·开发语言·kotlin·jetbrains
珠峰下的沙砾13 小时前
Kotlin中抽象类和开放类
kotlin
Kapaseker14 小时前
如果你的 View 不支持 Compose 怎么办
android·kotlin
前行的小黑炭15 小时前
Android:在项目当中可能会遇到的ANR,应该如何解决?
android·java·kotlin
FunnySaltyFish1 天前
Kotlin 2.2.20 上新:新contract、跨平台编译稳定、默认Swift导出……
kotlin
alexhilton1 天前
runBlocking实践:哪里该使用,哪里不该用
android·kotlin·android jetpack
萧雾宇1 天前
Android Compose打造仿现实逼真的烟花特效
android·flutter·kotlin
叽哥2 天前
Kotlin学习第 4 课:Kotlin 函数:从基础定义到高阶应用
android·java·kotlin
前行的小黑炭2 天前
Android :如何快速让布局适配手机和平板?
android·java·kotlin