一:kotlin 如何定义泛型
①泛型类的定义:
只需要在类的后面加上<> 即可,里面定义泛型 T、M、K 等等
//定义一个泛型T
class Generate<T>(var t:T)
//定义多个泛型T K
class GenerateMore<T,K>(val t:T,val k:K)
②泛型接口的定义:
在名字后面加 <>
//该接口定义一个泛型T
interface GenerateInter<T>{
//使用传过来的泛型
fun useT(t:T)
}
//该接口定义多个泛型T M
interface GenerateInterMore<T,M>{
//使用传过来的泛型
fun useT(t:T)
//使用传过来的多个泛型
fun useTM(t:T,m:M)
}
③泛型方法的定义:
//该方法定义一个泛型T
fun <T> generate(t:T){
println()
}
//该方法定义多个泛型T L
fun <T,L> generateMore(t:T,l:L){
}
二: out in 的定义
out:对应Java的通配符类型是 <? extends 类名>
in:对应java的通配符类型是 <?super类名>