代理模式: 注重控制對方法的訪問,代理者可以決定是否調用被代理對象的方法。 應在構造方法中實例化被代理的對象。不應讓訪問者知道,你代理了哪個對象。 裝飾者模式: 注重為方法添加額外的行為,裝飾者一定會調用被裝飾對象的方法的。 可以動態指定被裝飾的對象,具體做法是,裝飾者類應該包含一個以被裝飾者對象為參數的構造函數。 裝飾者模式的最佳例子就是Java中的IO流