已采纳回答 / 西北望change
对模板方法中非共性的方法采用抽象类中的抽象方法,是因为有些方法在模板中确实不知道具体的实现,提供一个空的默认实现,再在子类中去override是多余的。再者,共性的部分采用private标识,对子类屏蔽了实现细节,让具体的子类只用关注它特有的个性方法实现。 这样整体结构更加清晰明了,各个类的职责也更加具体清楚。
2016-05-30
讲师回答 / Arthur
这个就真的要具体问题具体分析了,看需求的场景是否适合使用模板方法模式,如果适合就大胆的用;如果不适合那也没有必要强求。另外做个广告,如何面对剧烈的变化,策略模式也许有自己的应对之道哦。另外如果结合模板方法和策略模式,适用场景又会有不同。
2014-10-19