• 反射工具-ReflectUtil
    • 介绍
    • 使用
      • 获取某个类的所有方法
      • 获取某个类的指定方法
      • 构造对象
      • 执行方法

    反射工具-ReflectUtil

    介绍

    Java的反射机制,可以让语言变得更加灵活,对对象的操作也更加“动态”,因此在某些情况下,反射可以做到事半功倍的效果。Hutool针对Java的反射机制做了工具化封装,封装包括:

    • 获取构造方法
    • 获取字段
    • 获取字段值
    • 获取方法
    • 执行方法(对象方法和静态方法)

    使用

    获取某个类的所有方法

    1. Method[] methods = ReflectUtil.getMethods(ExamInfoDict.class);

    获取某个类的指定方法

    1. Method method = ReflectUtil.getMethod(ExamInfoDict.class, "getId");

    构造对象

    1. ReflectUtil.newInstance(ExamInfoDict.class);

    执行方法

    1. class TestClass {
    2. private int a;
    3. public int getA() {
    4. return a;
    5. }
    6. public void setA(int a) {
    7. this.a = a;
    8. }
    9. }
    1. TestClass testClass = new TestClass();
    2. ReflectUtil.invoke(testClass, "setA", 10);