我已经写了这个测试类,但我想知道为什么代理对象的hashCode与原始对象不同。有人知道原因吗?
public class Main {
public static void main(String[] args) {
final Service realSubject = new Subject_A();
final Service proxySubject = ProxyGenerator.makeProxy(Service.class, realSubject);
final String hello = proxySubject.work("Hello");
System.out.println("hello = " + hello);
System.out.println("\n");
System.out.println("realSubject: " + realSubject);
System.out.println("proxySubject: " + proxySubject);
}
}
这是一个示例输出:
in Subject_A#work: str = Hello
hello = Hello_DONE
realSubject: at.me.proxy.Subject_A@4f4a7090
proxySubject: at.me.proxy.Subject_A@4f4a7090
.hashCode()
,所以我不明白你期望得到什么答案。请提供示例输出? - fgeService
、Subject_A
和ProxyGenerator
是什么?它们来自某个库还是你自己编写的? - Codebender