-
模板方法模式的优点查看全部
-
模板方法模式的适用场景查看全部
-
模板方法模式的实现要素查看全部
-
模板方法模式定义了一个操作中的算法骨架,而将一些步骤延迟到之类中实现,使得之类可以在不改变一个算法结构的同时,就重新定义该算法的某些特定步骤查看全部
-
适用场景: 1. 算法或操作遵循相似的逻辑 2. 重构时(把相同的代码抽取到父类中) 3. 重要,复杂的算法,核心算法设计为模板算法查看全部
-
准备一个抽象类,将部分逻辑以具体方法的形式实现,然后声明一些抽象方法交由子类实现该逻辑,用钩子方法给予子类更大的灵活性。最后将方法汇总构成一个不可改变的模板方法。查看全部
-
好莱坞原则: dont call us ,we will call u. (final)查看全部
-
钩子方法: 条件判断,返回值为boolean查看全部
-
抽象基类中,定义流程方法,流程中的个性化的方法为抽象方法。 具体子类中实现抽象方法。查看全部
-
模板方法 流程话,某些步骤是固定不变的,某些是会变化的。查看全部
-
(1)基本方法 private void boilWater(){ System.out.println("将水煮沸"); } private void boilWater(){ System.out.println("将饮料倒入杯中"); } (2)抽象方法 (只知道具体原则,而不知道实现细节的而不要将其延迟到子类实现的一些步骤) protected abstract void brew(); protected abstract void addCondiments(); (3)可选的钩子 protected boolean isCustomerWantsCondiments(){ return true; } (4)Template方法(final) public final void prepareBeverageTemplate(){ boilWater(); brew(); pourInCup(); if(isCustomerWantsCondiments()){ addCondiments(); } }查看全部
-
准备一个抽象类,将部分逻辑以具体方法的形式实现,然后声明一些抽象方法交由子类实现剩余逻辑,用钩子方法给予子类更大的灵活性。最后将方法汇总构成一个不可改变的模板方法。查看全部
-
1、final关键字修饰的类不能被重写 2、多态:父类引用指向子类对象(多态向上转型) 3、继承 4、abstract修饰的方法是抽象方法,有抽象方法的类必须是抽象类,抽象方法必须被子类实现查看全部
-
复写钩子方法 调整原逻辑查看全部
-
方法不用pulic的原因是因为防止直接调用抽象方法,扰乱规则,未达到模版开发模式的目的查看全部
举报
0/150
提交
取消