1:模板模式:就是定義一個骨架和算法,裏面的方法,可讓子類去實現,也能夠本身去實現。算法
2:代碼ide
public abstract class AbstractTemplate { //子類去實現 protected void createBody(){ } //子類去實現 protected void createColor(){ } //父類自己 private void createEngine(){ System.out.println("全部車的引擎都是汽油機 1.5V"); } public void create(){ createBody(); //調用子類 createColor(); //調用子類 createEngine();//調用父類 } }
public class BenZ extends AbstractTemplate { @Override protected void createBody() { System.out.println("奔馳的車身是跑車型"); } @Override protected void createColor() { System.out.println("奔馳的顏色是紅色"); } }
public class BMW extends AbstractTemplate { @Override protected void createBody() { System.out.println("寶馬的車身是跑車型"); } @Override protected void createColor() { System.out.println("寶馬的顏色是紅色"); } }
public class TemplateTest { public static void main(String[] args) { AbstractTemplate abstractTemplate = new BMW(); abstractTemplate.create(); } } //結果 寶馬的車身是跑車型 寶馬的顏色是紅色 全部車的引擎都是汽油機 1.5V