首页 > 经验记录 > JDK1.8的方法参数反射

JDK1.8的方法参数反射

在看李刚著的《疯狂java讲义》 反射这一部分介绍了非常多的新特性,让我大呼:原来还能这样操作?于是赶紧记录下来
 
Java8在java.lang.reflect包下新增了一个Executable抽象基类,该对象代表可执行的类成员,该类派生了Constructor和Method俩子类
 
Executable基类提供了大量的方法来获取修饰该方法或构造器的注解信息;还提供了isVarArgs ()方法用于判断该方法或构造器是否包含可变数量的形参,以及通过getModifiers()方法来获取该方法或构造函器的修饰符,除此之外Executable提供了如下俩个方法来获取该方法或该参数的形参个数以及形参名。
Int getParameterCount():     获取该构造器或方法的形参个数
Parameter[] getParameters():      获取该构造器或方法的所有形参
 
上面第二个方法烦恼会了一个Parameter[]数组,Parameter也是java8新增的API,每个Parameter对象就代表方法或者构造器的一个参数,parameter也提供了大量的方法来获取声明该变量的泛型信息,还提供了如下常用方法来获取参数信息。
>getModifiers()   获取修饰该形参的修饰符
>String getName():     获取新参名
>Type getParameterizedType():       获取带泛型的新参类型
>Class<?> getType():  获取形参类型
>boolean isNamePresent():      该方法返回该类的class文件中是否包含了方法的形参名信息
>boolean iaVarArgs(): 该方法用于判断该参数是否为可变形参
 

           


EA PLAYER &

历史记录 [ 注意:部分数据仅限于当前浏览器 ]清空

      00:00/00:00