泛型 | jdk1.5以后的 | |||||
基本用法 | ||||||
泛型擦除 | ||||||
泛型类 | ||||||
泛型方法 | ||||||
泛型接口 | ||||||
泛型关键字 | ||||||
反射泛型 | ||||||
概述 | 可以在编译时期进行类型检查 | |||||
可以避免频繁类型转换报错 | ||||||
泛型只在编译期有效,编译之后就都一样了 | ||||||
只能是引用类型 | ||||||
基本用法 | List<String> list=ArrayList<String>(); | |||||
泛型擦除 | pubic void save( List<Person> p) public void save(List<Dept> d) 编译之前不会报错,但编译完成之后就都是List类型了,所以会报错 编译后一样,称为泛型擦除 | |||||
泛型方法/类/接口 | ||||||
定义泛型方法 | public <K,T> T save(T t,K k){ return null;} | |||||
在使用泛型方法的时候确定泛型类型 | ||||||
泛型类 | public class Name<T>{} | |||||
创建对象的时候确定泛型类的类型 | ||||||
泛型接口 | Interface Name1<T>{} | |||||
Interface Name<T> implemets Name1<T>{} | ||||||
class Name2 implements Name1<String>{} | ||||||
对共有的类、接口、方法进行提取,使程序更加灵活 | ||||||
泛型关键字 | List<?> | 一般只在方法参数中用 | ||||
只能当参数使用,不能编辑它 | ||||||
extends | List<? Extends Number> | |||||
限制集合的范围 | ||||||
super | List<? Super String> | |||||
只能传String或者它的父类 |
泛型
最新推荐文章于 2024-11-18 17:25:23 发布