泛型:一种未知的数据类型 当我们不知道使用什么类型的时候就可以使用泛型
1.使用泛型的好处
- 避免了因为没有泛型设置 导致集合中可以存储任意类型的数据 导致数据转换麻烦
- 把代码运行期异常提升到了编译器
弊端:
泛型是什么类型 就只能存储什么类型
定义一个泛型类:
public class FanXing<E> {
//泛型变量
private E name;
public E getName() {
return name;
}
public void setName(E name) {
this.name = name;
}
public <E> void print() {
System.out.println(name);
}
}
//调用
FanXing<String> fanXing = new FanXing<>();
泛型通配符
- 不能创建对象使用
- 只能传参使用
泛型的高级用法
?extends E
?super E