目录

一、泛型概述

二、泛型类

三、泛型接口

1.直接在实现类中确定好类型

2.实现类也写成泛型类

四、泛型方法

五、泛型好处

六、泛型集合

1.概念

2.特点


一、泛型概述

1. 本质是参数化类型,把类型作为参数传递。

2. 常见的形式有泛型类泛型接口泛型方法

3. 语法:<T,...>     T称为类型占位符,表示一种引用类型。

4. 好处:

(1)提高代码的重用性;

(2)防止类型转换异常,提高代码的安全性。

二、泛型类

要先创建一个泛型类:

↓↓↓

/**
 * 泛型类
 * 语法:类名<T>
 *     T是类型占位符,表示一种引用类型,如果编写多个使用逗号隔开
 *
 */
public class MyGeneric<T>{
    //使用泛型T
    //1.创建变量
    T t;

    //2.作为方法的参数   不知道数据类型,不能new对象
    public void show(T t){
        System.out.println(t);
    }

    //3.泛型作为方法的返回值
    public T getT(){
        return t;
    }
}

然后再使用泛型类创建对象:

↓↓↓

泛型的介绍和使用方法-LMLPHP

 注意:

1.泛型类只能使用引用类型;

2.不同泛型类型的对象之间不能相互赋值。

三、泛型接口

先写一个泛型接口 MyInterface.java:

/**
 * 泛型接口
 * 语法:接口名<T>
 *
 */
public interface MyInterface<T> {
    // 注意:不能使用泛型创建静态常量
    String name = "zhangsan";
    T server(T t);
}

接口不能实例化,要添加实现类,然后在测试类中实现。

1.直接在实现类中确定好类型

泛型的介绍和使用方法-LMLPHP

2.实现类也写成泛型类

泛型的介绍和使用方法-LMLPHP

四、泛型方法

重在注释      重在注释      重在注释      

↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ 

泛型的介绍和使用方法-LMLPHP

五、泛型好处

1.提高代码的重用性(重写);

2.防止类型转换异常,提高代码安全性。

六、泛型集合

1.概念

参数化类型、类型安全的集合,强制集合元素的类型必须一致。

2.特点

(1)编译时可检查,非运行时抛出异常;

(2)访问时,不必类型转换(拆箱);

(3)不同泛型之间引用不能相互赋值,泛型不存在多态。

源码详见:泛型类、接口、方法的使用方法


简单粗暴!

感谢ლ(°◕‵ƹ′◕ლ)!!!

11-28 20:34