設計模式-代理模式

代理模式能夠分紅靜態代理和動態代理兩種模式,它跟裝飾模式也有着很是相像的功能,都是爲了對某一個對象拓展它的功能,本文章寫的代理模式更加偏向於靜態代理的模式,是對一個真實功能的拓展ide

1.主體抽象類
public abstract class Subject {
        /**
         * 主體類
         */
        public abstract void request();
    }
2.真實的主體類
public class RealSubject extends Subject {
    @Override
    public void request() {
        System.out.println("真實的請求");
    }
}
3.代理類,代理真實主體類的真實請求
public class Proxy extends Subject{
    private RealSubject realSubject;
    /**
     * 代理真實實體,使用它的真實方法
     */
    @Override
    public void request() {
        if (realSubject ==null){
            realSubject =new RealSubject();

        }
        realSubject.request();
    }
}
4.測試用例
public class Test {
    public static void main(String[] args) {
        Proxy proxy =new Proxy();
        proxy.request();
    }
}
相關文章
相關標籤/搜索