文章目录
一、泛型类
二、泛型参数
三、泛型函数
四、多泛型参数
五、泛型类型约束
六、可变参数 vararg 关键字与泛型结合使用
七、使用 [] 运算符获取指定可变参数对象
八、泛型 out 协变...九、泛型 in 逆变
十、泛型 invariant 不变
十一、泛型逆变协变代码示例
十二、使用 reified 关键字检查泛型参数类型
一、泛型类
----
定义一个 泛型类 ,
将 泛型参数 T...放在 尖括号 中 , 该泛型参数放在 类名后 , 主构造函数之前 , 该泛型参数 T 是 类型占位符 ,
在 该泛型类类中 可以使用 类型占位符 T 作为一个类 使用 ,
可以 定义 T 类型成员属性..., 需要两个泛型参数来表示其类型 ;
T 类型在泛型类中注明 , 可以在该泛型类 Student 中随意使用 ,
但是 泛型参数 R 是首次在该函数中使用 , 因此需要在该函数的 fun 关键字...六、可变参数 vararg 关键字与泛型结合使用
----
如果 泛型类型 T 的参数 是 vararg 可变参数 , 则在接收 可变参数 时 , 需要使用 Array 类型 的变量进行接收