Java泛型

  1. 泛型指的就是在类定义的时候并不会设置类中的属性或方法中的参数的具体类型,而是在类使用时再进行定义,不能使用基本类型
  2. 泛型类
    如果要想进行这种泛型的操作,就必须做一个类型标记的声明。
    范例:泛型类的基本语法
    尖括号 <> 中的 T 被称作是类型参数,用于指代任何类型。实际上这个T可以任意写,但出于规范的目的,Java还是建议我们用单个大写字母来代表类型参数。常见的如:
    T 代表一般的任何类。
    E 代表 Element 的意思,或者 Exception 异常的意思。
    K 代表 Key 的意思
    V 代表 Value 的意思,通常与 K 一起配合使用。
    S 代表 Subtype 的意思
  3. 泛型方法
    泛型方法与泛型类稍有不同的地方是,类型参数也就是尖括号那一部分是写在返回值前面、方法修饰符后面的。<>中的 T 被称为类型参数,而方法中的 T 被称为参数化类型,它不是运行时真正的参数; 声明的类型参数,也是可以当作返回值的类型的。如果泛型方法的泛型参数与类型的泛型参数相同,则方法的泛型参数会隐藏外部类型的泛型参数,编译器将产生警告
    Java泛型
  4. 泛型接口

Java泛型
5.通配符
设置泛型上限<?extends 基类>?限定为指定类或其派生类
设置泛型下限<?super派生类>?限定为指定类或其基类