В Котлине я часто читаю
class MyFragment : BaseMvpFragment<MvpView, MvpPresenter>(), MvpView {}
, тогда как MvpView и MvpPresenter являются интерфейсами .. поэтому MyFragment расширяет BaseMvpFragment<MvpView, MvpPresenter>(), но как я могу интерпретировать <MvpView, MvpPresenter>?
MvpView
MvpPresenter
MyFragment
BaseMvpFragment<MvpView, MvpPresenter>()
<MvpView, MvpPresenter>
Класс BaseMvpFragment, очевидно, определяет два общих типа, которые задаются через <MvpView, MvpPresenter>.
BaseMvpFragment
Рассмотрим интерфейс List<T>.Когда вы реализуете это, это выглядит так:
List<T>
class VerySpecialList : List<String> { ... }
Это параметры типа;см здесь .