利用反射调用私有方法

Teacher类中的私有方法:

    private void printToString() {
        System.out.println(toString());
    }

调用代码:

try {
            Teacher t = new Teacher();
            Method method = Teacher.class.getDeclaredMethod("printToString");
            method.setAccessible(true);
            method.invoke(t);
        } catch (Exception e) {
            e.printStackTrace();
        }

NOTE:method.setAccessible(true);必须写在method.invoke(t);之前。

你可能感兴趣的:(Java)