首页 > 经验记录 > java > 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