相关疑难解决方法(0)

设计代理类的真正目的是什么?

我一直在研究代理类,但我不明白设计它的全部想法。

据我所知,到目前为止,它是一个包装对象,可以控制对原始对象的访问。但如果我们想控制它,为什么我们不能设计具有这些访问机制的原始类呢?

我读到这些代理对象对于跟踪方法调用、将方法调用路由到远程服务器非常有用。

但我搜索了一个可以用java向我解释这一点的问题,但我没有找到任何问题。

我将说明我所引用的书中的方法跟踪程序的代码。

public class ProxyTest {

  public static void main(String[] args) throws ClassNotFoundException {

     var elements = new Object[1000];

     // fill elements with proxies for the integers 1 . . . 1000
     for (int i = 0; i < elements.length; i++) {
       Integer value = i + 1;
       var handler = new TraceHandler(value);
       Object proxy = Proxy.newProxyInstance(ClassLoader.getSystemClassLoader(), new Class[]{Comparable.class}, handler);
       elements[i] = proxy;
     }

     // construct a random integer
     Integer key = new Random().nextInt(elements.length) + 1;

     // …
Run Code Online (Sandbox Code Playgroud)

java proxy

9
推荐指数
2
解决办法
3592
查看次数

标签 统计

java ×1

proxy ×1