如何在 Java 中从类外部访问类的私有方法?
java 8object oriented programmingprogramming
您可以使用 Java 反射包访问类的私有方法。
步骤 1 − 通过传递声明为私有的方法的方法名称来实例化 java.lang.reflect 包的 Method 类。
步骤 2 − 通过将值 true 传递给 setAccessible() 方法,将方法设置为可访问。
步骤 3 − 最后,使用 invoke() 方法调用该方法。
示例
import java.lang.reflect.Method; public class DemoTest { private void sampleMethod() { System.out.println("hello"); } } public class SampleTest { public static void main(String args[]) throws Exception { Class c = Class.forName("DemoTest"); Object obj = c.newInstance(); Method method = c.getDeclaredMethod("sampleMethod", null); method.setAccessible(true); method.invoke(obj, null); } }