java
import java.lang.reflect.Method;
public class PrivateMethodReflectionExample {
public static void main(String[] args) throws Exception {
// Step 1: 获取 Class 对象
Class<?> targetClass = TargetClass.class;
// Step 2: 获取 Method 对象
Method method = targetClass.getDeclaredMethod("handleOrderMsg", Message.class, Boolean.class);
// Step 3: 设置访问权限
method.setAccessible(true);
// Step 4: 调用目标方法
TargetClass instance = new TargetClass();
Message message = new Message(); // 假设 Message 是你的实际类
Boolean fromMq = true; // 假设 fromMq 是你的实际参数
Object result = method.invoke(instance, message, fromMq);
// 处理调用结果
if (result instanceof MessageResp) {
MessageResp response = (MessageResp) result;
// 对返回结果进行处理
} else {
// 处理其他情况
}
}
}
class TargetClass {
private MessageResp handleOrderMsg(Message message, Boolean fromMq) {
// 实际的私有方法实现
return new MessageResp(); // 假设 MessageResp 是你的实际类
}
}
class Message {
// 假设 Message 是你的实际类
}
class MessageResp {
// 假设 MessageResp 是你的实际类
}