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

相关推荐
移动开发者1号9 小时前
Fragment懒加载优化方案总结
android·kotlin
移动开发者1号9 小时前
Android Activity启动模式面试题
android·kotlin
alexhilton9 小时前
Jetpack Compose 中ViewModel的最佳实践
android·kotlin·android jetpack
猿小蔡-Cool12 小时前
Kotlin 中 Lambda 表达式的语法结构及简化推导
开发语言·windows·kotlin
wzj_what_why_how1 天前
Kotlin JVM 注解详解
android·kotlin
雨白1 天前
Kotlin 标准函数 with, run, apply 与静态方法实现
kotlin
tangweiguo030519871 天前
Android全局网络监控最佳实践(Kotlin实现)
android·kotlin
移动开发者1号2 天前
Android后台服务保活方案对比分析
android·kotlin
移动开发者1号2 天前
ContentProvider URI匹配机制详解
android·kotlin
zhifanxu2 天前
android协程异步编程常用方法
android·开发语言·kotlin