狀態模式
代理模式
先不寫了,代理模式也比較簡單,RMI比較難
靜態代理模式其實很常見,比如買火車票這件小事:黃牛相當於是火車站的代理,我們可以通過黃牛買票,但只能去火車站進行改簽和退票。在代碼實現中相當於爲一個委託對象realSubject提供一個代理對象proxy,通過proxy可以調用realSubject的部分功能,並添加一些額外的業務處理,同時可以屏蔽realSubject中未開放的接口。
1、RealSubject 是委託類,Proxy 是代理類;
2、Subject 是委託類和代理類的接口;
3、request() 是委託類和代理類的共同方法;
具體代碼實現如下:
interface Subject {
void request();
}
class RealSubject implements Subject {
public void request(){
System.out.println("RealSubject");
}
}
class Proxy implements Subject {
private Subject subject;
public Proxy(Subject subject){
this.subject = subject;
}
public void request(){
System.out.println("begin");
subject.request();
System.out.println("end");
}
}
public class ProxyTest {
public static void main(String args[]) {
RealSubject subject = new RealSubject();
Proxy p = new Proxy(subject);
p.request();
}
}
動態代理前面的文章寫了,記住就好了。