博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
代理模式
阅读量:5878 次
发布时间:2019-06-19

本文共 1162 字,大约阅读时间需要 3 分钟。

hot3.png

1、定义公用接口

package com.hhdys.Proxy;/** * Created by zhangkai on 16/5/30. */public abstract class Subject {    public abstract void operation();}

2、真实实体

package com.hhdys.Proxy;/** * Created by zhangkai on 16/5/30. */public class RealSubject extends Subject {    @Override    public void operation() {        System.out.println("真实的操作!!!");    }}

3、代理类

package com.hhdys.Proxy;/** * Created by zhangkai on 16/5/30. */public class Proxy extends Subject {    private RealSubject realSubject=new RealSubject();    @Override    public void operation() {        System.out.println("代理开始工作=====");        realSubject.operation();        System.out.println("代理结束工作=====");    }}

4、主程序:

package com.hhdys.main;import com.hhdys.Proxy.Proxy;import com.hhdys.Proxy.Subject;/** * Created by zhangkai on 16/5/30. */public class ProxyMain {    public static void main(String[] args){        Subject subject= new Proxy();        subject.operation();    }}

5、运行结果:

代理开始工作=====真实的操作!!!代理结束工作=====

6、总结:

(1).职责清晰

真实的角色就是实现实际的业务逻辑,不用关心其他非本职责的事务,通过后期的代理完成一件完成事务,附带的结果就是编程简洁清晰。

(2).代理对象可以在客户端和目标对象之间起到中介的作用,这样起到了中介的作用和保护了目标对象的作用。

(3).高扩展性

转载于:https://my.oschina.net/hhdys412/blog/684177

你可能感兴趣的文章
应用程序日志中总是说MS DTC无法正确处理DC 升级/降级事件,是什么意思
查看>>
毕业了,爱情怎么办?
查看>>
关于django一个请求的生命周期
查看>>
Supervisor-容器中启动多个程序
查看>>
CSS颜色代码大全
查看>>
我的友情链接
查看>>
mybatis数据处理的几种方式
查看>>
QStandardItem and QStandardItemModel Class Reference
查看>>
友情链接的作用
查看>>
我的友情链接
查看>>
使用Nginx搭建WEB服务器
查看>>
【oracle唯一主键SYS_GUID()】
查看>>
作业2
查看>>
raid技术-研究感受
查看>>
远程主机探测技术FAQ集 - 扫描篇
查看>>
C++中调用python函数
查看>>
Nomad添加acl认证
查看>>
“TI门外汉”网路知识笔记一 OSI参考模型
查看>>
你不需要jQuery(五)
查看>>
DatanodeDescriptor说明
查看>>