public class RefectUser { private String getUser(int i) { System.out.println(i); return null; } private RefectUser (String str) { System.out.println(str); } public RefectUser (){ } } 通过反射访问 Refect 的类私有方法和私有构造方法 import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; public class Test { public static void main(String[] args) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, SecurityException, NoSuchMethodException, ClassNotFoundException { Class classType =Class.forName("RefectUser"); Method[] methods = classType.getDeclaredMethods(); Object obj = classType.newInstance(); for (Method method : methods) { method.setAccessible(true); if (method.getName().equals("getUser")) { method.invoke(obj, new Integer(1)); } } Constructor constructor = classType.getDeclaredConstructor(String.class); constructor.setAccessible(true); Object object = constructor.newInstance("hello world!"); } } 输出结果 1 hello world!