首页 > 其他 > 详细

代理模式

时间:2018-05-12 22:08:23      阅读:128      评论:0      收藏:0      [点我收藏+]

代理模式跟之前的策略模式,装饰模式差距不大,但是代理模式不能无限递归,比策略模式更加解耦

通过当前对象调用某个方法,同时也调用对象内部属性对象的方法。

个人感觉无需继承也可以,继承了以后替换起来成本比较低

//父类抽象类
abstract class Subject {
    public abstract void Request();
}

//实现类
public class RealSubject extends Subject {
    public void Request(){
        System.out.println("真实的请求");
    }
}
//代理类
public class Proxy extends Subject {
    Subject subject;
    @Override
    public void Request() {
        // TODO Auto-generated method stub
        if(subject==null){
            subject=new RealSubject();
        }
        subject.Request();
    }
}

 

下面是实现

//实现方法,简洁调用
public class Context {
    public static void main(String[] args) {
        Proxy p=new Proxy();
        p.Request();
    }
}

 

代理模式

原文:https://www.cnblogs.com/blackdeng/p/9030002.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!