JavaGuide icon indicating copy to clipboard operation
JavaGuide copied to clipboard

AQS模板方法模式重写的应该是钩子方法而不是模板方法

Open zhenglin-charlie-li opened this issue 3 years ago • 3 comments

6.2. AQS 原理分析中,写道

AQS 使用了模板方法模式,自定义同步器时需要重写下面几个 AQS 提供的模板方法

这里有误,一般模板方法都加上 final 关键词,不能被重写,重写的应该是钩子方法而不是模板方法

zhenglin-charlie-li avatar Dec 23 '21 12:12 zhenglin-charlie-li

6.2. AQS 原理分析中,写道

AQS 使用了模板方法模式,自定义同步器时需要重写下面几个 AQS 提供的模板方法

这里有误,一般模板方法都加上 final 关键词,不能被重写,重写的应该是钩子方法而不是模板方法

抽象类中 final 修饰的方法无法被重写。

Snailclimb avatar Dec 30 '21 09:12 Snailclimb

对, 模板方法一般加上final修饰无法被重写,, 所以重写的应该是钩子方法

zhenglin-charlie-li avatar Feb 06 '22 04:02 zhenglin-charlie-li

对, 模板方法一般加上final修饰无法被重写,, 所以重写的应该是钩子方法

感谢,已经修改完善:https://github.com/Snailclimb/JavaGuide/commit/274848094ebee89e4a0692b063590d2f96642ab0

Snailclimb avatar Feb 07 '22 11:02 Snailclimb