因为这个模式比较简单,也是我们以后用到的模式,提前讲解一下
代理设计模式是结构型设计模式,这个模式可以为其他对象提供一种代理,以控制对这个对象的访问
所谓代理,是指具有与代理源(被代理的对象),具有相同接口的类,客户端必须通过代理的目标类交互,而代理一般在交互的过程中(交互前后),进行某些特别的处理。
//------------书店接口---------------------------
public interface Store {
public void sailBook();
}
//----------------具体的书店----------------------------------
public class RealStore implements Store {
public void sailBook() {
System.out.println("卖书");
}
}
//----------------代理商--------------------------------
public class ProxyStore implements Store{
private RealStore realSubject;
public void sailBook() {
dazhe();
if(realSubject == null) {
realSubject = new RealStore();
}
realSubject.sailBook();
give();
}
public void dazhe() {
System.out.println("打折");
}
public void give() {
System.out.println("赠送代金券");
}
}
//--------------------测试类-------------------------------------------
public class MainClass {
public static void main(String[] args) {
ProxyStore proxySubject = new ProxyStore();
proxySubject.sailBook();
}
}
是不是很easy,有什么问题可以给我留言!
|
|