因此,我试图弄乱Kotlin,并且我有一个旧的Java MVP框架,其中包含Java中较差的泛型,其中我们不得不将泛型接口(interface)转换为更具体的接口(interface),例如public <P extends BaseContract.Presenter> P getPresenter()
我们将其转换为一个子类
@Override
public AdvertisementContract.Presenter getPresenter()
{
return (AdvertisementContract.Presenter)super.getPresenter();
}
在Kotlin中,我要这样做:
override fun getPresenter(): AdvertisementContract.Presenter
{
return super.getPresenter() as AdvertisementContract.Presenter
}
在固定基本接口(interface)中的泛型之前,我能做些什么?
最佳答案
根据我对您问题的理解,您可以这样做
override fun <P: BaseContract.Presenter> getPresenter(): P {
return mPresenter
}
其中mPresenter可以是任何扩展
BaseContract.Presenter
类的Presenter的实例