代理模式:爲其他對象提供一種代理以控制對這個對象的訪問.
爲什麼要使用Proxy?
1.授權機制 不同級別的用戶對同一對象擁有不同的訪問權利通過代理來控制這兩種用戶的訪問權限.
2.某個客戶端不能直接操作到某個對象,但又必須和那個對象有所互動.
code:
代理對象:
public class ProxyObject implements Object {
Object obj;//被代理對象實例
public ProxyObject() {
System.out.println("這是代理類");
obj = new ObjectImpl();
}
public void action() {
System.out.println("代理開始");
obj.action();
System.out.println("代理結束");
}
}
被代理對象:
public class ObjectImpl implements Object {
public void action() {
System.out.println("這是被代理的類");
}
}
代理對象和被代理對象共同要實現的接口:
public interface Object {
void action();
}