一个类的创建可能要完成一系列复杂的操作,这时候就可以用构造器模式来完成对象的创建
以人造车为例
构建者即其实现类
package creational.pattern.builder; public abstract class Builder { public abstract void buildEngine(); public abstract void buildTyre(); public abstract void buildCar(); public abstract void getCar(); }package creational.pattern.builder; public class BMW extends Builder { @Override public void buildEngine() { System.out.println("build BMW engine."); } @Override public void buildTyre() { System.out.println("build BMW tyre."); } @Override public void buildCar() { System.out.println("build BMW car."); } @Override public void getCar() { System.out.println("get a BMW car."); } }
建造的实施方
package creational.pattern.builder; public class Director { public void product(Builder builder) { builder.buildCar(); builder.buildEngine(); builder.buildTyre(); } }测试代码
package creational.pattern.builder; public class Client { public static void main(String[] args) { Builder builder=new BMW();//创建一个Builder对象 Director director=new Director();//创建一个Director对象 director.product(builder);//Director对象造车 builder.getCar();//将制造的车返回 } }运行效果
转载于:https://www.cnblogs.com/liunianfeiyu/p/10092953.html