设计模式入门:最简单的模板方法模式

设计模式入门:最简单的模板方法模式 目录使用场景案例--写作文建议模版方法用final修饰使用场景提供一个模版方法每个人拿到这个模版 在二次做自己的个性化开发如下图的write方法只有正文部分是不一样的 就可以把它抽离成一个模板方法提高代码复用并把正文部分写成抽象方法 让子类去个性化实现正文部分大致实现步骤案例–写作文先写抽象类 把整个作文模版定义成一个模版方法:write()在模版方法write()里先写好不变的开头和结尾 然后提供一个抽象方法writeMain()用来给子类写正文部分 并在模版方法write()里直接调用抽象方法writeMain()让子类继承抽象类 个性化实现抽象方法writeMain()子类对象需要写作文的时候直接调用模板方法write()即可抽象类(父类) write()就是一个模板方法:两个子类:测试类(子类对象调用父类中的模板方法 来写作文):s调用write() write()里又调用writeMain() 也可以看成是就近原则(优先调用子类s重写过的writeMain)建议模版方法用final修饰模版方法最好用final修饰(他是给子类用的 不是给子类重写的)比如上面学生抽象类里的模版方法write()他是给子类(小学生 中学生) 作为一个作文模版直接去用的 不是给子类重写的(如果模板可以被随意重写 那他就不是一个模板了)子类要重写的是个性化writeMain()方法