Kotlin委托Delegate托管by

这篇具有很好参考价值的文章主要介绍了Kotlin委托Delegate托管by。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Kotlin委托Delegate托管by

import kotlin.reflect.KProperty

fun main() {
    var user: String by MyDelegate()
    user = "fly"
    println(user)
}

class MyDelegate {
    private var v: String? = null

    operator fun getValue(thisRef: Any?, property: KProperty<*>): String {
        return "property='${property.name}' getValue ${v}"
    }

    operator fun setValue(thisRef: Any?, property: KProperty<*>, value: String) {
        v = value
        println("property='${property.name}' setValue -> $value")
    }
}

property='user' setValue -> fly
property='user' getValue fly

import kotlin.properties.*

fun main() {
    var len: Int by Delegates.observable(0) { prop, oldValue, newValue ->
        println("$oldValue -> $newValue")
    }

    len = 2023
    len = 2024
}

0 -> 2023
2023 -> 2024

Delegates.observable追踪观察可变数据更新,Kotlin_zhangphil的博客-CSDN博客**Java观察者模式的场景:一个女孩洗澡,被很多男孩偷看。女孩洞察后,搜索坏男孩,然后继续洗澡。*//*男孩Boy.java*/import java.util.Observable;不定长函参的Java观察者模式更新数据传递import java.util.LinkedList;/** * 抽象被观察者。Java观察者模式 : Observer / Observable_zhangphil的博客-CSDN博客。不定长函参的Java观察者模式更新数据传递_zhangphil的博客-CSDN博客。https://blog.csdn.net/zhangphil/article/details/132088085文章来源地址https://www.toymoban.com/news/detail-701242.html

到了这里,关于Kotlin委托Delegate托管by的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Kotlin基础(九):对象和委托

    本文主要讲解kotlin对象和委托。 Kotlin文章列表 Kotlin文章列表: 点击此处跳转查看 在Kotlin中,对象(Object)是一个具有特殊用途的单例实例。它是一种创建单个实例的方式,确保在整个应用程序中只存在一个特定对象。 对象在Kotlin中有以下特点和用途: 单例实例:对象只能有

    2024年02月14日
    浏览(38)
  • Kotlin(十七) 泛型和委托

    泛型的基本用法 泛型主要有两种定义方式:一种是定义泛型类,另一种是定义泛型方法,使用的语法结构都是 T 。当然括号内的 T 并不是固定要求的,事实上你使用任何英文字母或单词都可以,但是通常情况下, T 是一种约定俗成的泛型写法。 定义一个泛型类,示例如下:

    2024年02月04日
    浏览(39)
  • Kotlin笔记(五):泛型基础,委托

     Java自1.5版本引入了泛型的概念, Kotlin自然也支持泛型,Kotlin的泛型跟Java的泛型有相同之处,也有一些特别之处.  在一般的编程模式下,我们需要给任何一个变量指定一个具体的类型,而泛型允许我们在不指定具体类型的情况下进行编程,这样编写出来的代码将会拥有更好的

    2024年02月07日
    浏览(40)
  • Unity 委托 (Delegate) 的简单理解以及实现

    委托相当于把某一个方法当成参数,当执行委托的时候就相当于执行了方法,所以这个方法必须和委托具有相同的参数类型. 委托的简单实现   输出的结果 多播:委托对象可使用 \\\"+\\\" 运算符进行合并。一个合并委托调用它所合并的两个委托。只有相同类型的委托可被合并。\\\"-\\\" 运算

    2024年02月16日
    浏览(42)
  • 理解C#委托(Delegate)通俗易懂,深入浅出

    委托首先是一个数据类型,我们可以像定义结构体一样定义一个委托类型,委托(Delegate) 是存有对某个方法的引用的一种引用类型变量。引用可在运行时被改变 委托的定义 例如: 在定义委托类型时要指定函数的参数类型和返回值,一旦声明了委托类型,委托对象必须使用

    2024年02月02日
    浏览(52)
  • 【unity小技巧】委托(Delegate)的基础使用和介绍

    在Unity中,委托( Delegate )是一种用于处理方法回调的特殊类型。它允许您将方法作为参数传递给其他方法,并在需要时调用这些方法。 委托在游戏开发中非常有用࿰

    2024年02月15日
    浏览(46)
  • UE4/5C++:Delegate(委托or代理?)的使用

    目录 DECLARE的使用 单播: 绑定UObject 绑定 调用 无参调用 解除绑定: 绑定Lambda表达式: 绑定c++原生的c++类的函数: 绑定共享指针: 绑定静态函数: 绑定线程安全的共享指针: 绑定一个Function方法: 多播 动态单播代理:  用在蓝图上: 在c++中如何绑定:  动态多播代理  

    2024年02月07日
    浏览(84)
  • C#中的委托(Delegate)和事件 (Event)详解与使用范例

    最近天气晴雨不定,你因为害怕打游戏时忘记在下雨时收衣服或者在天晴时把衣服挂出去,于是你委托好友小明在天气发生变化时打电话通知你,这就是一种委托. 下面是这种委托的实例代码 以上代码的输出为 值得一提的是,如下代码为创建一个继承自Delegate类的名为XiaoMing的子类

    2023年04月12日
    浏览(41)
  • 面试常考:C# 委托(delegate、Action、Func、predicate)和事件

    刚开始工作的时候,觉得委托和事件有些神秘,而当你理解他们之后,也觉得好像没有想象中的那么难,这篇博文算是自己对委托和事件的一次梳理和总结。 C#中的委托,相当于C++中的指针函数,但委托是面向对象的,是安全的,是一个特殊的类,当然他也是引用类型,委托

    2024年02月16日
    浏览(45)
  • 【Kotlin】Kotlin 与 Java 互操作 ① ( 变量可空性 | Kotlin 类型映射 | Kotlin 访问私有属性 | Java 调用 Kotlin 函数 )

    在 Java 语言 中 , 任何 引用类型变量 都可以为 空 null ; Java 中 八种 基本数据类型 变量 的 默认值 为 0 或 false ; 但是在 Kotlin 语言 中 , 所有的 变量 都是引用类型变量 , 没有基本数据类型 , 默认情况下 所有的变量 都为 非空类型 ; 下面分别定义一个 Java 类 和 Kotlin 脚本 , 在 K

    2024年02月02日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包