关于java设计模式的模板方法模式与钩子方法

今天又看了一把Spring IOC的源代码,看到refresh这个核心方法的时候,发现其中调用了一个onRefresh方法,跟进一看发现里面什么实现都没有。

什么钩子方法与钩子方法的作用:

开始觉得很奇怪为什么会这样,后面才知道原来是自己孤陋寡闻了。所谓钩子方法是对于抽象方法或者接口中定义的方法的一个空实现,比如说有一个接口,这个接口中定义了很多个方法,而你想实现其中某一个方法,这个时候就可以写一个抽象类实现这个接口,在这个抽象类里将你要用的那个方法设置为abstract,其它方法进行空实现,然后再继承这个抽象类,就不需要实现其它不用的方法,这就是钩子方法的作用。

查了一下钩子方法另外一个高级用法就是可以干预父类的业务流程,详情在下面这个人的博客里https://www.cnblogs.com/yanlong300/p/8446261.html 

猜你喜欢

转载自blog.csdn.net/nuomizhende45/article/details/81266942
今日推荐