Kotlin学习笔记

这篇博客主要介绍了Kotlin的学习要点,包括泛型继承的特殊用法,如何使用Gson将String转换为Bean,Kotlin中的this引用方式,when关键字的使用,以及lateinit var和by lazy初始化的区别。
摘要由CSDN通过智能技术生成

1.泛型继承

open abstract class BaseAbstractPresenter<T : IBaseView?> : BasePresenter {
    var mView: T? = null

    constructor(mView: T) {
        this.mView = mView
    }

    override fun detachView() {
        mView = null
    }

}
open abstract class DialogBaseActivity<T : BaseAbstractPresenter<*>> : NormalBaseActivity(), IBaseView {
    lateinit var mPresenter: T

    abstract fun createPresenter(): T

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        mPresenter = createPresenter()
    }

    override fun detachView() {
        mPresenter?.detachView()
    }

    override fun onDestroy() {
        super.onDestroy()
        detachView()
    }
}

BaseAbstractPresenter不能指定明确的泛型类型用*代替,不能使用Any

2.Gson转换String转bean


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值