gpt4 book ai didi

java - 我们可以使用反射调用抽象类的私有(private)方法吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:12:46 25 4
gpt4 key购买 nike

我们可以使用反射调用抽象类的私有(private)方法吗?

最佳答案

是的,你可以。您可以使用反射。你需要什么-

  1. The class object of Abstract Class.
  2. dynamically set the method's accessibility to true. Check the code below.
class ExitPuzzle extends MyAbstractClass {
public static void main(String... args) throws IllegalArgumentException,
IllegalAccessException, InvocationTargetException {
Class clazz = MyAbstractClass.class;
Method[] methods = clazz.getDeclaredMethods();
System.out.println(Arrays.toString(methods));
methods[0].setAccessible(true);
methods[0].invoke(new ExitPuzzle(), null);
}

}

abstract class MyAbstractClass {
private void myMethod() {
System.out.println("in MyAbstractClass");
}
}

订单:

[private void MyAbstractClass.myMethod()]
in MyAbstractClass

关于java - 我们可以使用反射调用抽象类的私有(private)方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25242276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com