模板方法

模板方法模型是一種行爲設計模型和設計模式 。 模板方法 （ template method ） 是一個定義在父類別的方法 ， 負責處理流程 、 算法的不變部分 。 模板方法會調用多個定義在父類別的其他工具方法 （ helper method ） ， 而這些方法是算法的可變部分 ， 有可能只是抽象方法並沒有實作 。 模板方法僅決定這些抽象方法的執行順序 ， 這些抽象方法由子類別負責實作 ， 並且子類別不允許覆蓋模板方法 （ 即不能重寫處理流程 ） 。 這種設計模式是一種控制反轉的實現方式 。 因爲高層代碼不再確定 （ 控制 ） 算法的處理流程 。