模板模式(行为型)
1.定义
Define the skeleton of an algorithm in an operation, deferring some steps to subclasses. Template Method lets subclasses redefine certain steps of an algorithm without changing the algorithm’s structure.
2.总结
回调也是模板模式的一种应用,
一直对回调这个词有误解。
A 调用 B,B 反过来又调用 A,这种调用机制就叫作“回调”;
更具体点是 A 事先注册一个函数x到B中,当A调用B的y函数的时候,B
反过来调用A事先注册到B的x函数,这个过程就叫回调;
实例见下面代码:
这里面的用的匿名内部类就是模板模式的体现,只不过不是通过很明显的继承方式来体现,匿名内部类也是属于一个子类,子类试下了接口的方法,这个过程就是体现了 sketon of algorithm
上面这种例子是同步回调,异步回调更像是观察者模式。
回调是基于组合模式来实现,模板模式基于继承方式来实现,回调比模板更加灵活!设计原则组合优于继承 由此可见!!!!