目录

一、泛型的基本介绍

1、传统方法存在的问题

2、泛型的基本介绍

3、泛型的语法

4、泛型的好处

二、自定义泛型

1、注意事项

2、自定义泛型方法

 三、自定义泛型接口

 四、泛型的继承和通配符

 五、JUnit 


一、泛型的基本介绍

1、传统方法存在的问题

  • 不能对加入到集合 ArrayList中的数据类型进行约束(不安全)
  • 遍历的时候, 需要进行类型转换,如果集合中的数据量较大,对效率有影响

2、泛型的基本介绍

  1. Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。

  2. 用在类声明或实例化时来指定好需要的具体的类型。
  3. Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会产生ClassCastException异常。 同时, 代码更加简洁、 健壮。
  4. 泛型的作用是: 可以在类声明时通过一个标记符来表示类中某个属性的类型,或者是某个方法的返回值的类型,或者是参数类型。
  • 注意:                                                                                                                              1、泛型的类型参数只能是类类型(包括自定义类), 不能是简单类型。
    2、 同一种泛型可以对应多个版本(因为参数类型是不确定的), 不同版本的泛型类实例是不兼容的。
    3、泛型的类型参数可以有多个。
    4、泛型的参数类型可以使用extends语句
    5、泛型的参数类型还可以是通配符类型。

3、泛型的语法

(1)声明:

interface 接口{}
public class 类名{}

 java 中泛型常见标记符:

  • E – Element (在集合中使用,因为集合中存放的是元素)
  • T – Type(Java 类)
  • K – Key(键)
  • V – Value(值)
  • N – Number(数值类型)
  •  – 表示不确定的 java 类型

注意: