驽马十驾

驽马十驾,功在不舍

目录
Kotlin 系列:Kotlin的 Self Type的一种实现方法
/  

Kotlin 系列:Kotlin的 Self Type的一种实现方法

Kotlin 的一种 Self Type 的一种实现方法,父类中可以直接获取到子类的类型。

核心是利用继承类取巧!

在 MyBatisPlus 中看到过此类用法,现在大概明白了作用

interface SelfType<T : SelfType<T>> {

    val selfType: T
        get() = this as T

}

class Student : SelfType<Student> {

}

//在父类中使用真实的子类类型
fun main() {
    val studentSec = Student()

    println(studentSec.selfType === studentSec)
}
不积跬步,无以至千里。不积小流,无以成江海。
评论