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

相关推荐
Android-Flutter9 小时前
kotlin - 平板分屏,左右拖动,2个Activity计算宽度,使用ActivityOptions、Rect(三)
android·kotlin
前行的小黑炭1 天前
Android :为APK注入“脂肪”,论Android垃圾代码在安全加固中的作用
android·kotlin
tangweiguo030519871 天前
Android Kotlin 动态注册 Broadcast 的完整封装方案
android·kotlin
前行的小黑炭1 天前
Android 不同构建模式下使用不同类的例子:如何在debug模式和release模式,让其使用不同的类呢?
android·kotlin·gradle
Android-Flutter1 天前
kotlin - 2个Fragment实现左右显示,左边列表,右边详情,平板横、竖屏切换
android·kotlin
木头左2 天前
结合机器学习的Backtrader跨市场交易策略研究
人工智能·机器学习·kotlin
前行的小黑炭2 天前
Android Flow的其他使用:stateIn和冷流(普通Flow)
android·kotlin
前行的小黑炭2 天前
Android Flow:你真的了解?在工作当中的运用~~通过光照例子来解释一下..
android·kotlin
张可3 天前
Kotlin 函数式编程思想
android·前端·kotlin
alexhilton4 天前
Android ViewModel数据加载:基于Flow架构的最佳实践
android·kotlin·android jetpack