PatternMethod - 模板方法模式 发表于 2026-03-09 更新于 2026-03-14 分类于 Java , 设计模式 , 行为型模式 PatternMethod-模板方法模式 Why 通常你认为子类/调用者掌控执行:谁调用谁就能控制。 而模板方法模式反过来:父类掌控流程,子类只提供细节。 所以叫“反向控制”——控制权从子类/调用者反转到了父类。 主要角色 优缺点 使用场景 算法步骤很固定, 但其中个别部分需要改变, 此时将易变的部分抽象出来,供子类去实现 需要通过子类来决定父类中某个步骤是否执行,实现子类对父类的反向控制 典型案例 在锁中内置一个aqs的子类作为静态内部类,并在锁的方法中调用该内部类的方法, 为锁提供大量模板方法