静态代理
静态代理
//卖票接口 public interface SellTickets { void sell(); } //火车站 火车站具有卖票功能,所以需要实现SellTickets接口 public class TrainStation implements SellTickets { public void sell() { System.out.println("火车站卖票"); } } //代售点 public class ProxyPoint implements SellTickets { private TrainStation station = new TrainStation(); public void sell() { System.out.println("代理点收取一些服务费用,静态代理"); station.sell(); } } //测试类 public class Client { public static void main(String[] args) { ProxyPoint pp = new ProxyPoint(); pp.sell(); } }
ProxyPoint作为访问对象和目标对象的中介。同时也对sell方法进行了增强。
缺点:
当接口方法数量比较多的,需要对每个方法进行中转,增加了代码的维护难度