zoukankan      html  css  js  c++  java
  • Proxy

    //Subject 定义RealSubject和Proxy的共同接口,这样可以在任何使用RealSubject的地方都可以用Proxy。
    public abstract class Subject {
    
        public abstract void request();
        
    }
    //RealSubject 定义Proxy所代表的真实实体
    public class RealSubject extends Subject{
    
        @Override
        public void request() {
            System.out.println("real do subject !");
        }
        
    }
    //Proxy RealSubject的代理,与RealSubject同一个接口,这样可以代替实体。
    public class Proxy extends Subject {
    
        private RealSubject subject = new RealSubject();
    
        @Override
        public void request() {
            subject.request();
        }
    
    }
    public class Client {
    
        public static void main(String[] args) {
            Proxy proxy = new Proxy();
            proxy.request();
        }
        
    }

    打印结果:
    real do subject !

    代理模式:为其它对象提供了一种代理以控制这个对象的访问。

    代理模式主要使用了 Java 的多态,干活的是被代理类,代理类主要是接活,你让我干活,好,我交给幕后的类去干,你满意就成,那怎么知道被代理类能不能干呢?同根就成,大家知根知底,你能做啥,我能做啥都清楚的很,同一个接口呗。

  • 相关阅读:
    第二阶段团队站立会议06
    第二阶段团队站立会议05
    Spring
    JVM
    线程池
    java内存模型
    线程
    接口与抽象类
    动态绑定,多态,static
    同步异步,并发并行概念的理解
  • 原文地址:https://www.cnblogs.com/xuekyo/p/2847756.html
Copyright © 2011-2022 走看看