静态代理

静态代理

静态代理类在编译期就生成

//卖票接口
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方法进行了增强。

缺点:当接口方法数量比较多的,需要对每个方法进行中转,增加了代码的维护难度

posted @ 2022-03-31 17:56  进击的小蔡鸟  阅读(33)  评论(0编辑  收藏  举报