// 範本方法模式 // 當我們要完成某一細節層次一致的一個過程或一系列步驟,但其個別步驟在更詳細的層次上的實現可能不同時,可以用範本方法模式處理 // 有重複地就搬出來 // 當不變的和可變的行為在方法的子類別實現中混合在一起的時候,不變的行為就會在子類別中重複出現。透過範本方法模式把這些行為搬移到單一的地方,這樣就幫助子類別擺脫重複的不變行為的糾纏 public void Template() { AbstractClass abstractClass; abstractClass = new ConcreateClassA(); abstractClass.TemplateMethod(); abstractClass = new ConcreateClassB(); abstractClass.TemplateMethod(); }
void main() { AbstractClass abstracct1_view; abstracct1_view = new ConcreateClassA(); abstracct1_view.TemplateMethod(); AbstractClass abstracct2_view; abstracct2_view = new ConcreateClassB(); abstracct2_view.TemplateMethod(); }