java知识点-泛型

Java知识点总结(Java泛型)

很全面的泛型讲解,值得推荐。

泛型

泛型就是参数化类型

  • 适用于多种数据类型执行相同的代码
  • 泛型中的类型在使用时指定
  • 泛型归根到底就是“模版”

优点:使用泛型时,在实际使用之前类型就已经确定了,不需要强制类型转换。

泛型主要使用在集合中

自定义泛型

泛型字母

  • 形式类型参数(formal type parameters)即泛型字母
  • 命名泛型字母可以随意指定,尽量使用单个的大写字母(有时候多个泛型类型时会加上数字,比如T1,T2)
    常见字母(见名知意)

    • T Type
    • K V Key Value
    • E Element
  • 当类被使用时,会使用具体的实际类型参数(actual type argument)代替

泛型类

  • 只能用在成员变量上,只能使用引用类型

泛型接口

  • 只能用在抽象方法上

泛型方法

  • 返回值前面加上 &ltT&gt

通配符

通配符(Wildcards)

  • T、K、V、E 等泛型字母为有类型,类型参数赋予具体的值
  • ?未知类型 类型参数赋予不确定值,任意类型
  • 只能用在声明类型、方法参数上,不能用在定义泛型类上

extends/super

上限(extends)

指定的类必须是继承某个类,或者实现了某个接口(不是implements),即<=

  • ? extends List

下限(super)

即父类或本身

  • ? super List

猜你喜欢

转载自blog.csdn.net/csdnindex/article/details/82965024