Java 当方法具有n个枚举类型作为参数时,如何调用该方法

Java 当方法具有n个枚举类型作为参数时,如何调用该方法,java,reflection,enums,invoke,Java,Reflection,Enums,Invoke,我想调用一个方法,该方法将枚举类型作为带有反射的参数。 如何做到这一点 代码: } 问题是,在FiltersEnum筛选器参数的情况下,参数[1]=应该是什么?使用如下内容: private enum TestEnum { TEST } private class TestClass { public void testMethod(String param1, TestEnum param2) { System.out.println(param1 + " -

我想调用一个方法,该方法将枚举类型作为带有反射的参数。 如何做到这一点

代码:

}


问题是,在FiltersEnum筛选器参数的情况下,参数[1]=应该是什么?

使用如下内容:

private enum TestEnum {
    TEST
}

private class TestClass {
    public void testMethod(String param1, TestEnum param2) {
        System.out.println(param1 + " - " + param2);
    }
}

private static TestClass createTestClassInstance() {
    //return new TestClass instance
}

public static void main(String[] args) throws Exception {
    Class<?>[] classes = new Class<?>[2];
    classes[0] = String.class;
    classes[1] = TestEnum.class;
    Method m = TestClass.class.getMethod("testMethod", classes);
    m.invoke(createTestClassInstance(), "test", TestEnum.TEST);
}
private enum TestEnum {
    TEST
}

private class TestClass {
    public void testMethod(String param1, TestEnum param2) {
        System.out.println(param1 + " - " + param2);
    }
}

private static TestClass createTestClassInstance() {
    //return new TestClass instance
}

public static void main(String[] args) throws Exception {
    Class<?>[] classes = new Class<?>[2];
    classes[0] = String.class;
    classes[1] = TestEnum.class;
    Method m = TestClass.class.getMethod("testMethod", classes);
    m.invoke(createTestClassInstance(), "test", TestEnum.TEST);
}
test - TEST