關於Chain of Responsibility模式的一個問題

seeker發表於2002-11-20
http://www.jdon.com/designpatterns/cor.htm

裡面最後形成的程式碼為

那麼Handler實現程式碼如下:
public class ConcreteHandler implements Handler{
  private Handler successor;

  public ConcreteHandler(Handler successor){
    this.successor=successor;
  }

  public void handleRequest(Request request){
    if (request instanceof HelpRequest){
      //這裡是處理Help的具體程式碼
    }else if (request instanceof PrintRequst){
      request.execute();
    }else
      //傳遞到下一個
      successor.handle(request);

    }
  }

}
<p class="indent">


現在就是每新增一種request型別還是要新增一個判斷語句嘍?

}else if (request instanceof RequestType){
<p class="indent">

相關文章