Java的java.lang.reflect包提供了一组用于在运行时分析和操作类、接口、字段和方法的工具。以下是该包中常用的几个类及其主要方法:
1、Class类
- getMethods():获取所有公共方法(包括继承自父类或实现的接口)
- getDeclaredMethods():获取当前类声明的所有方法。(即自己声明的任何权限的方法,包括私有方法)
- getField(String name):获取指定名称的公共字段
- getDeclaredField(String name):获取指定名称的当前类声明的字段
2、Method类:
- invoke(Object obj,Object... args):调用特定对象上此Method表示底层方法,并传入参数列表args。
3、Field类
- set(Object obj,Object value):将指定对象上此Field表示的字段设置为新值。
- get(Object obj):返回指定对象上此Field表示的字段的当前值。
4、Constructor类:
- newInstance(Object initargs):使用提供的初始化参数创建并返回新对象的实例。
5、Modifier类:
- isAbstract(int modifiers):判断修饰符是否为抽象类
- isFinal(int modifiers):判断修饰符是否为finalize类型







网友评论