代理模式基础篇
来源:互联网 发布:象过河软件客服 编辑:程序博客网 时间:2024/06/08 05:57
代理模式
1.基础篇
1.1简单的静态代理
代理是为了对访问对象提供额外的或者不同的操作,这些操作涉及与“实际”对象的通信,因此代理充当着中间人的角色。简而言之,代理就是一个中介,比如老师,家长和孩子三人之间的关系,老师想和孩子交流,也可以和家长交流,然后由家长转达老师的话和孩子交流,当然喽,家长可以在这其中多做一些操作,比如和孩子交流完可以奖励孩子。而家长就充当了代理的角色,代理的真实对象是孩子。
代理模式的结构图如下
实战练习,代码如下
public interface Interface {
void doSometing();
void sometingElse(Stringarg);
}
public class RealObject implements Interface{
@Override
public void doSometing() {
// TODO Auto-generated method stub
System.out.println("RealObject dosometing!");
}
@Override
public void sometingElse(Stringarg) {
// TODO Auto-generated method stub
System.out.println("RealObject sometingElse='"+arg+"'");
}
}
public class SimpleProxyimplements Interface{
private Interface object;
public SimpleProxy(Interfaceobject){
this.object=object;
}
@Override
public void doSometing() {
// TODO Auto-generated method stub
System.out.println("访问真实对象之前,我先做点事情!");
object.doSometing();
System.out.println("访问真实对象之后,我再做点事情!"); }
@Override
public void sometingElse(Stringarg) {
// TODO Auto-generated method stub
object.sometingElse(arg);
}
//客户端
public static void main(String[]args) {
RealObject ro=new RealObject();
ro.doSometing();
ro.sometingElse("hello");//客户端可以直接访问真实对象
SimpleProxy sp=new SimpleProxy(ro);
sp.doSometing();
sp.sometingElse("nihao");//客户端也可以通过代理访问真实对象,而代理可以/在访问的过程中多做一些操作
}
}
- 代理模式基础篇
- 代理模式之基础
- 代理模式(基础)
- 代理模式基础
- 代理模式基础学习
- 设计模式--学习笔记--代理模式Proxy--基础篇
- Java设计模式之代理模式(基础篇)
- Java基础之代理模式
- Spring AOP基础:代理模式
- Java设计模式之代理模式(动态代理-基础篇)
- java基础与基础加强 动态代理/代理模式
- 基础加强学习总结之代理模式
- OC基础—代理模式设计
- Java基础——代理模式
- OC基础—代理设计模式
- Java基础--代理模式(静态、动态)
- 黑马程序员:Java基础总结----静态代理模式&动态代理
- 【设计模式基础】结构型模式 - 7 - 代理(Proxy)
- matplotlib 基础教程
- 198. House Robber
- 知识技能学习表
- 堆溢出学习之fastbin attack
- poj2079 triangle 凸包 旋转卡壳
- 代理模式基础篇
- 后台工具screen
- 线程的状态转换
- 冒泡排序
- CentOS使用yum安装mysql
- C++温故笔记(二)
- 通过请求队列的方式来缓解高并发抢购(初探)
- 大数据表查询优化方案
- JS继承(inheritance)的几种方式分析