Я работаю в приложении Android, использующем Kotlin, но когда я пытаюсь использовать конкретный класс в качестве четвертого параметра, у меня появляется ошибка, мой вопрос: что я делаю неправильно?
Это базовый адаптер RecyclerView
abstract class BaseAdapter<K, T: DbEntity<K>, VDB: ViewDataBinding, VH: BaseViewHolder<K,DbEntity<K>, VDB>>: RecyclerView.Adapter<VH>(){
val items: MutableList<T> = ArrayList()
fun addNewItems(newItems: List<T>){
}
}
Это класс, который я использую для указания параметра generi c, и я получаю ошибку
class CaseByCountryViewHolder(mDataBinding: ItemCaseByCountryBinding): BaseViewHolder<Int, CaseByCountry, ItemCaseByCountryBinding>(mDataBinding) {
override fun bind(item: CaseByCountry) {
}
}
Это Базовый класс ViewHolder:
abstract class BaseViewHolder<K, T: DbEntity<K>, VDB: ViewDataBinding>(mDataBinding: ViewDataBinding)
:RecyclerView.ViewHolder(mDataBinding.root){
protected val context: Context = mDataBinding.root.context
protected val layoutInflater: LayoutInflater = LayoutInflater.from(context)
abstract fun bind(item: T)
}
И, наконец, я получаю ошибку:
Не могли бы вы мне помочь, пожалуйста? Я не знаю, что я делаю не так, заранее спасибо.