1、概念
裝飾設計模式就是通過包裝類,動態的給一個對象增加新的功能。如BufferReader就是對FileReader進行包裝,在原有功能的基礎上提供加強功能readLine().
2、使用步驟
public interface Sourceable { void read(); }
public class Source implements Sourceable {
@Override public void read() { //原始功能代碼 } }
public class Decorator implements Sourceable { private Sourceable source; public Decorator(Sourceable source){ this.source = source; } @Override public void read() { source.read(); // +增強功能邏輯代碼 } } |