0
点赞
收藏
分享

微信扫一扫

反射操作泛型

彭维盛 2023-07-13 阅读 51

1、Java采用泛型擦除的机制来引入泛型。Java中的泛型仅仅是给编译器javac使用的,确保数据的安全性和免去强制类型转换的麻烦。但是,一旦编译完成,所有的和泛型有关的类型将全部擦除。

2、为了通过反射操作这些类型以迎合实际开发的需要,Java新增ParameterizedType,GenericArrayType、TypeVariable和WildcardType几种类型来代表不能被归一到Class类中的类型,但是又和原始类型齐名的类型。

ParameterizedType:表示一种参数化的类型,比如Collection<String>。

GenericArrayType:表示一种元素类型是参数化类型或者类型变量的数组类型。

TypeVariable:是各种类型变量的公共父接口。

WildcardType:代表一种通配符类型表达式,比如:?,? extends Number,?super Integer。

【wildcard是一个单词,就是“通配符”】

举报

相关推荐

0 条评论