Kotlin约束泛型参数必须继承自某个父类

Kotlin约束泛型参数必须继承自某个父类

Kotlin 复制代码
open class SuperData {
}

class DataA : SuperData {
    constructor() {
        println("DataA constructor")
    }
}

class DataB : SuperData {
    constructor() {
        println("DataB constructor")
    }
}

fun <T : SuperData> myfun(param: T) {
    if (param is DataA) {
        println("myfun DataA")
    }

    if (param is DataB) {
        println("myfun DataB")
    }
}

fun main() {
    val dataA = DataA()
    myfun(dataA)

    val dataB = DataB()
    myfun(dataB)
}

DataA constructor

myfun DataA

DataB constructor

myfun DataB

Kotlin函数作为参数指向不同逻辑(二)-CSDN博客文章浏览阅读683次。一般编程的技法,比如,在Android中,假设在主线程中实现了一个函数,但该函数是耗时操作,毫无疑问,需要将这个函数的实现切入非主线程中操作,那么可以设计一种托管的函数,在托管的函数里面干脏活,处理完成后,把结果抛到主线程。一般编程的技法,比如,在Android中,假设在主线程中实现了一个函数,但该函数是耗时操作,毫无疑问,需要将这个函数的实现切入非主线程中操作,那么可以设计一种托管的函数,在托管的函数里面干脏活,处理完成后,把结果抛到主线程。kotlin把函数作为参数转递给另一个函数-CSDN博客。https://blog.csdn.net/zhangphil/article/details/133382999

Kotlin函数作为参数指向不同逻辑_ketlin 将方法作为参数-CSDN博客文章浏览阅读1.4k次。一般编程的技法,比如,在Android中,假设在主线程中实现了一个函数,但该函数是耗时操作,毫无疑问,需要将这个函数的实现切入非主线程中操作,那么可以设计一种托管的函数,在托管的函数里面干脏活,处理完成后,把结果抛到主线程。一般编程的技法,比如,在Android中,假设在主线程中实现了一个函数,但该函数是耗时操作,毫无疑问,需要将这个函数的实现切入非主线程中操作,那么可以设计一种托管的函数,在托管的函数里面干脏活,处理完成后,把结果抛到主线程。kotlin把函数作为参数转递给另一个函数-CSDN博客。_ketlin 将方法作为参数https://blog.csdn.net/zhangphil/article/details/133378966

相关推荐
QING6188 小时前
Kotlin inline 实战详解 —— 新手须知
android·kotlin·android jetpack
Ehtan_Zheng9 小时前
Kotlin Flow:combine()、merge() 和 zip() 的区别 —— 不要再互相替代使用
kotlin
高林雨露9 小时前
Java 转 Kotlin 对照开发指南
java·开发语言·kotlin
o丁二黄o10 小时前
语义版本控制:用Gemini镜像站实现合同条款的深度差异分析与风险追踪
javascript·kotlin·scala
Kapaseker11 小时前
为什么 Java 的数组需要 new 出来
android·java·kotlin
赏金术士1 天前
第七章:状态管理实战与架构总结
android·ui·kotlin·compose
Kapaseker1 天前
搞懂变换!精通 Compose 绘制(二)
android·kotlin
赏金术士2 天前
Compose 教学项目
android·kotlin·compose
赏金术士2 天前
Jetpack Compose 状态提升(State Hoisting)完全指南
android·kotlin·compose
Hali_Botebie2 天前
岭回归(Ridge Regression),也称为L2正则化回归
数据挖掘·回归·kotlin