1:模板模式:就是定义一个骨架和算法,里面的方法,可以让子类去实现,也可以自己去实现。
2:代码
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
来源:https://www.cnblogs.com/orange-time/p/11546396.html