当前位置: 首页 > news >正文

完整教程:结构型设计模式之Proxy(代理)

完整教程:结构型设计模式之Proxy(代理)

结构型设计模式之Proxy(代理)

前言:
代理模式,aop环绕通知,动态代理,静态代理 都是代理的一种,这次主要是记录设计模式的代理demo案例,详情请看其他笔记。

1)意图

为其他对象给出一种代理以控制对这个对象的访问。

2)结构

在这里插入图片描述

3)适用性

Poxy模式适用于在应该比较通用和复杂的对象指针代替简单的指针的时候,常见情况有:

代码:

/**
* @author psd 结构性设计模式之代理模式
*/
public class ProxyDemo {
public static
void main(String[] args) {
RealSubject realSubject = new RealSubject(
)
;
Proxy proxy = new Proxy(realSubject)
;
proxy.request(
)
;
}
}
interface Subject{
void request(
)
;
}
class Proxy implements Subject{
protected RealSubject realSubject;
public Proxy(RealSubject realSubject){
this.realSubject = realSubject;
}
@Override
public void request(
) {
System.out.println("我是中介帮您看房....."
)
;
realSubject.request(
)
;
System.out.println("我是中介看好房后对接租方和被出租方....."
)
;
}
}
class RealSubject implements Subject{
@Override
public void request(
) {
System.out.println("我是客户要租房。。。。。"
)
;
}
}