# java.lang.reflect.Type
# default String getTypeName() {
return toString();
}
# ParameterizedType
# TypeVariable
# GenericDeclaration
# 定义在哪里使用泛型
# 实现类
# 1. Method
# 2. Constructor
# 3. Class
# 4. 我们只能在方法(包括普通方法跟构造方法)以及类上申明泛型。
# Type[] getBounds();
获取泛型的边界;实际只有上边界;
# D getGenericDeclaration();
返回泛型申明时所在的类或者方法
# String getName();
返回类型变量的名称
# getAnnotatedBounds();
此方法返回一个AnnotatedType类型的数组,获取的是我们在类型变量的上界。
不同于getBounds()方法的是,这个方法可以获取到边界上添加的注解
# GenericArrayType
# Type getGenericComponentType();
返回数组中元素的类型,TypeVariable或者ParameterizedType
# 泛型数组
# WildcardType
# 处理泛型中的通配符
such as ?, ? extends Number, or ? super Integer.
# // 获取通配符表达式的上界
Type[] getUpperBounds();
# // 获取通配符表达式的下界
Type[] getLowerBounds();
# ResolvableType
# Spring 提供的泛型工具类,封装的所有的类型
# GenericTypeResolver
后续会更新源码分析系列文章 as: spring core 代码阅读的系列文章 和 jvm 系列文章