[ Kotlin ] Property Delegate

About Property Delegate

property delegate enable you get or set a property value

by DelegateObject.getValue or DelegateObject.setValue

in this way, Delegate object can be reused in similar places

Sources
kotlin 复制代码
fun main() {
    val hello = Hello()
    hello.name = "tom"
    println(hello.name)
}

class Hello {

    var name: String by Delegate()
}

class Delegate {

    private var value = ""

    operator fun getValue(thisRef: Any, property: KProperty<*>): String {
        return "${thisRef.javaClass.simpleName}::${property.name}=${value}"
    }

    operator fun setValue(thisRef: Any, property: KProperty<*>, value: String) {
        this.value = value
    }
}
相关推荐
喵手4 小时前
从 Java 到 Kotlin:在现有项目中迁移的最佳实践!
java·python·kotlin
居然是阿宋7 小时前
Kotlin高阶函数 vs Lambda表达式:关键区别与协作关系
android·开发语言·kotlin
wangz767 小时前
kotlin的kmp编程中遇到Unresolved reference ‘java‘问题
kotlin·kmp
投笔丶从戎10 小时前
Kotlin Multiplatform--01:项目结构基础
android·开发语言·kotlin
_一条咸鱼_14 小时前
深度剖析 Android ViewPager:从源码探究其使用原理
android·面试·kotlin
每次的天空15 小时前
kotlin与MVVM结合使用总结(三)
开发语言·microsoft·kotlin
louisgeek1 天前
Kotlin 面试知识点
kotlin
Kapaseker1 天前
Kotlin泛型精解:类型世界的奇幻之旅
android·kotlin
居然是阿宋2 天前
Kotlin函数体详解:表达式函数体 vs 代码块函数体——使用场景与最佳实践
java·开发语言·kotlin
划水哥~2 天前
Kotlin中实现静态
开发语言·kotlin