无锡做网站选优易信,国外wordpress主题风险,wordpress数据表,建设网站的服务宗旨#x1f308;键盘敲烂#xff0c;年薪30万#x1f308; 目录
泛型的基础知识#xff1a;
♥A 泛型的好处#xff1a;
♠A 泛型擦除#xff1a;
♣A 泛型的小细节#xff1a;
泛型的使用#xff1a;
①泛型类#xff1a;
②⭐泛型接口#xff1a;
③泛型方法键盘敲烂年薪30万 目录
泛型的基础知识
♥A 泛型的好处
♠A 泛型擦除
♣A 泛型的小细节
泛型的使用
①泛型类
②⭐泛型接口
③泛型方法
泛型的通配符 泛型的基础知识
♥A 泛型的好处
统一数据类型。把运行时期的问题提前到了编译期间避免了强制类型转换可能出现的异常。 ♠A 泛型擦除 为什么java中的泛型是伪泛型❓ 例如把数据存入String类的一个集合里 存 - 编译器会进行泛型检查如果不是String你的代码下面会出现(编译错误) 如果是String类强转为Object类存到集合里 取 - 将Object类转换为对应得数据类型 ♣A 泛型的小细节
泛型中不能写基本数据类型指定泛型得具体类型后可传入该类型得子类如果不写泛型默认Object 泛型的使用
①泛型类
如果定义一个类时类型不确定可以定义为泛型 public class MyArrayListE{private Object[] Obj new Object[10];private int size 0;public void add(E val){Obj[size] val;}}
public class Demo1{public static void main(String[] args){MyArrayListInteger list new MyArrayList();list.add(1);}
}
②⭐泛型接口
实现类指定类型
public class MyList Implements ListString{// 重写List的所有抽象方法public void add(String e){……}
}
实现类继续沿用泛型
public class MyListE Implements ListE{public void add(E e){……}
} ③泛型方法
当类中只有一个方法的类型不确定时可使用泛型方法 public class Demo1{public static void main(String[] args){MyArrayListInteger list new MyArrayList();ListUtil.addAll(list, 1, 2, 3);}class ListUtil{public staticE void addAll(ArrayListE list, E e1, E, e2, E e3){list.add(e1);list.add(e2);list.add(e3);} }
} 泛型的通配符 泛型不具备继承性 本方法不确定类型但是只想要继承结构里面的对象 ? extends E
表示可以传递E和E的子类
? super E
表示可以传递E和E的父类
public static void method(ArrayList? extends YE e){……}public static void method(ArrayList? super YE e)(……) 总结 泛型提供了编译时类型检查避免了在运行时出现类型转换错误。这确保了代码的类型安全性并在编译时捕获错误。 通配符可以使用上限和下限来限制泛型的范围。? extends T表示类型是T或T的子类? super T表示类型是T或T的父类。 Java中的泛型在编译后会被擦除