Java泛型主要有“定义泛型类”、“定义泛型接口”、“定义泛型方法”、”实例化泛型类或接口“、“使用通配符”和“使用泛型限定”六种用法:1、定义一个泛型类,使用来表示类型参数;2、定义一个泛型接口,使用来表示类型参数;3、定义一个泛型方法,使用来表示类型参数;4、在实例化一个泛型类或接口时,指定具体的类型参数;5、使用通配符来表示某个泛型类型的子类型或超类型。

Java泛型主要有以下几种用法:
- 定义泛型类
可以定义一个泛型类,使用
public class MyList<t> {
private T[] array;
public MyList(T[] array) {
this.array = array;
}
public T get(int index) {
return array[index];
}
}</t>
- 定义泛型接口
可以定义一个泛型接口,使用
public interface MyInterface<t> {
T doSomething();
}</t>
- 定义泛型方法
可以定义一个泛型方法,使用
public <t> T doSomething(T param) {
// ...
}</t>
- 实例化泛型类或接口
在实例化一个泛型类或接口时,必须指定具体的类型参数,例如:
当用户要求为 Java 代码添加注释、修改注释、审查注释、整理注释格式,或要求按照代码注释规范处理 Java 文件时,使用本技能。本技能用于统一生成和维护 Java 类注释模板、按 Git 对比 release 判断版本号、补充每行代码上方中文块注释、调整注释空行规则,并保持 Java 文件 UTF-8 无 BOM 编码。典型触发场景包括:补充类注释、更新 @version、检查 @author 来源、整理行尾注释、把注释放到代码上一行、检查注释是否符合规范、构建前检查 Java 注释风格。
MyList<string> list = new MyList(new String[]{"a", "b", "c"});</string>
- 使用通配符
可以使用通配符来表示某个泛型类型的子类型或超类型,包括?、? extends T和? super T三种形式,例如:
MyList extends Number> list1 = new MyList(new Integer[]{1, 2, 3});
MyList super Integer> list2 = new MyList(new Number[]{1.0, 2.0, 3.0});
其中,list1可以接受任何类型是Number的子类型(如Integer、Float等)作为元素,而list2可以接受任何类型是Integer的超类型(如Number、Object等)作为元素。
- 使用泛型限定
可以使用泛型限定来限制类型参数的范围,包括extends和super两种形式,例如:
public <t> void doSomething(T param) {
// ...
}</t>
其中,
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










