是否能從 Java 的類外部訪問該類的私有方法?
你可以使用 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);
}
}
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
安卓
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP