JAVA小白的崛起之路(六)泛型
介绍:
Java泛型是JDK1.5中引入的一个新特性,其本质是参数化类型,也就是说所操作的 数据类型被指定为一个参数(type parameter)这种参数类型可以用在类、接口和 方法的创建中,分别称为泛型类、泛型接口、泛型方法
泛型类和泛型接口
如果定义的一个类或接口有一个或多个 类型变量 ,则可以使用泛型。泛型类型变 量由尖括号界定,放在类或接口名的后面。
泛型符号:只是一个符号,一个占位符而已,不存在任何意义,我们习惯使用一个 大写的字母 T,E,K,V
public class className<泛型符号1,泛型符号2...>{}
public interface interfaceName<泛型符号1,泛型符号2...>{}
public class className inplements interfaceName<T>{
如果一个类去实现的接口是泛型接口,实现类也必须是泛型类,而且2和接口保持 一致,还可以新增符号
public class Person<T>{}
public interface List<T> extends Collection<T>{ }
泛型通配符 <?>
本质上从同一个泛型类衍生出来的类实例化的对象 类型都是一样 泛型类
因为同一个泛型类衍生出来的多个类之间没有任何关系,也不可以互相赋值,自然 不能互相替换;由此需要对每一个泛型实例进行分别处理,为了解决这个问题可以 使用泛型通配符解决
泛型上下边界
上边界
为泛型添加上边界,即传入的类型实参必须是指定类型的子类型
下边界
为泛型添加下边界,即传入的类型必须是指定类型的父类型
总结
泛型是什么? 将类型参数化,在定义的时候不确定的类型通过泛型来指定(定义是 只是符号,形参)。可以在定义类的时候定义泛型, 接口定义的时候定义泛型,方 法定义的到时候定义泛型 (形参)
创建对象的时候,调用方法的时候,必须要给定泛型。类,必须指定类型。方法, 直接给数据