java反射怎么获取私有方法

66次阅读
没有评论

共计 739 个字符,预计需要花费 2 分钟才能阅读完成。

Java 反射可以通过使用 getDeclaredMethod() 方法来获取私有方法。getDeclaredMethod()方法可以获取指定名称和参数类型的方法,包括私有方法。

以下是一个示例代码,演示了如何使用反射获取并调用私有方法:

import java.lang.reflect.Method;

public class ReflectionExample {private void privateMethod() {System.out.println(" 私有方法被调用 ");
    }

    public static void main(String[] args) throws Exception {// 获取类的 Class 对象
        Class<ReflectionExample> clazz = ReflectionExample.class;

        // 获取指定名称的私有方法
        Method privateMethod = clazz.getDeclaredMethod("privateMethod");

        // 设置私有方法可访问
        privateMethod.setAccessible(true);

        // 创建类的实例
        ReflectionExample example = clazz.newInstance();

        // 调用私有方法
        privateMethod.invoke(example);
    }
}

在上述代码中,getDeclaredMethod()方法用于获取 privateMethod() 方法,setAccessible(true)方法用于设置私有方法可访问,invoke()方法用于调用私有方法。

注意:在使用反射调用私有方法时,需要设置私有方法可访问,否则会抛出 IllegalAccessException 异常。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2024-01-29发表,共计739字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)