代理模式
2017-06-24 本文已影响0人
zhangxiao
一句话概述
所谓的代理者是指一个类别可以作为其它东西的接口。代理者可以作任何东西的接口:网络连接、内存中的大对象、文件或其它昂贵或无法复制的资源。
实现一个代理模式
我们来实现一个生活中常见的代理的例子:通过中介租房
1.定义一个租的接口
public interface IRent {
void rent();
}
2.定义一个实现租接口的客户类
public class Custom implements IRent {
private String mName;
public Custom(String string) {
mName = string;
}
@Override
public void rent() {
System.out.println(mName+"租了一个房");
}
}
3.定义一个实现租接口的代理类
public class RentProxy implements IRent{
private IRent mIRent;
public RentProxy(IRent iRent) {
mIRent=iRent;
}
@Override
public void rent() {
mIRent.rent();
}
public static void main(String[] args) {
RentProxy rentProxy=new RentProxy(new Custom("小明"));
rentProxy.rent();
}
}
打印结果
image.png是不是有点面熟,我们前面的策略模式就用到了代理模式。
代理模式比较简单,以上就足够了。