欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java泛型

程序员文章站 2022-05-23 15:11:29
...

一、什么是泛型

Jdk1.5版本后出现的新特性。用于解决安全问题,是一个安全机制
方法用<类型>声明
格式:通过<>来定义操作的引用类型

在使用java提供的对象时,什么时候写泛型呢?
通常情况下在集合框架很常见,只要见到<>就是要定义泛型
其实<> 就是用来接收类型的,当使用集合时将集合中要存储的数据类型作为参数传递到<> 中即可
好处:
1、将运行时期出现的问题,从运行时期转移到了编译时期,将运行时期的问题减少
2、避免了强制转换
集合定义:ArrayList<类型> 对象名称 = new ArrayList()
迭代器定义Iterator it = a1.Iterator()

二、早期没有泛型

早起做法:通过object类提高程序扩展性,使用时需要强制转换
如定义一个工具类:
java泛型

三、泛型类

泛型类定义方法:凡是需要类型的地方都用XX来代替
XX:泛型的名称
什么时候定义泛型类?
当类中要操作的引用数据类型不确定的时候,早起定义Object来完成扩展,现在定义泛型类来完成扩展

Class 名称<XX>
{
    private XX 成员变量名;
    public XX 成员方法名称(){
    }
}

java泛型

四、泛型方法

泛型方法
泛型类定义的泛型,在整个方法中有效,如果被方法使用,那么泛型类的对象要操作的具体类型后,所有要操作的类型就固定了
为了让不同的方法操作不同类型,而且类型还不确定,那么就可以将泛型定义在方法上
泛型方法:public 返回类型 方法名(XX 参数,XX参数){}
类型定义在方法上,参数名称已明确,就可以使用

注:静态方法不可以访问类上定义的泛型
如果静态方法定义的类型不确定,可以将泛型定义在方法上
泛型定义在接口上
interface 接口名<>{}
java泛型

五、泛型限定

当不确定接收何种泛型时,可以用一个通配符<?>来表示任意类型
如果只想打印一个类型或者它类型的子类这是可以用泛型限定
泛型限定:

相关标签: 泛型 java泛型