初識-設計模式四 代理模式

package com.mybatis.designpatterns.proxy;

abstract class Subject {
    public abstract void request();
}
package com.mybatis.designpatterns.proxy;

/**
 * 請求的真實類
 */
public class RealSubject extends Subject {
    @Override
    public void request() {
        System.out.println("真實的請求~");
    }
}
package com.mybatis.designpatterns.proxy;

/**
 * 代理類
 */
public class Proxy extends Subject{
    private RealSubject realSubject;
    @Override
    public void request() {
        if (null == realSubject) {
            realSubject = new RealSubject();
        }
        realSubject.request();
    }
}
package com.mybatis.designpatterns.proxy;

public class ProxyMain {
    public static void main(String[] args) {
        Proxy proxy = new Proxy();
        proxy.request();
    }
}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章