代理模式(Proxy Pattern)
1.概念介绍
代理模式也称为委托模式,通俗的讲就像卖商品存在的中间代理商。
2.代码示例
//代理模式基类,该类声明实体类与代理的共同接口方法,用接口和抽象方法实现都可以
public abstract class BaseClass {
public abstract void run();
}
//EntityClass 实体类,该类实现了代理模式的真实对象,执行具体的业务逻辑方法
public class EntityClass extends BaseClass{
@Override
public void run() {
}
}
//ProxyClass 该类为代理类,该类是对实体类的引用,在其实现的接口方法中调用实体类中对应的接口方法,以此起到代理的作用;
public class ProxyClass extends BaseClass {
private BaseClass mBaseClass;
public ProxyClass(BaseClass baseClass){
this.mBaseClass = baseClass;
}
@Override
public void run() {
//判断baseClass是否为空
if(mBaseClass != null){
mBaseClass.run();
}else{
//为空给提示
}
}
}
在activity或其他文件中使用
ProxyClass subject = new ProxyClass(new EntityClass());
subject.run();