3 建造(Builder)模式

1.含义:建造模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象.

2.类图

一个产品



 多个产品



  3.类

/**
 * 导演者角色
 */
public class Director {
	private Builder builder;

	public void construct() {
		builder = new ConcreteBuilder();
		builder.buildPart1();
		builder.buildPart2();
		Product p = builder.retrieveResult();
		S.s(p);
	}
}

/**
 * 抽象建造者
 *
 */
public abstract class Builder {
	public abstract void buildPart1();

	public abstract void buildPart2();

	public abstract Product retrieveResult();
}


/**
 * 具体建造者
 *
 */
public class ConcreteBuilder extends Builder {
	private Product product = new Product();

	@Override
	public void buildPart1() {

	}

	@Override
	public void buildPart2() {

	}

	@Override
	public Product retrieveResult() {
		return product;
	}

}


//产品类
public class Product {

}

//测试用类
public class Client {

	public static void main(String[] args) {
		Director d = new Director();
		d.construct();
	}

}
 

z

猜你喜欢

转载自samsongbest.iteye.com/blog/1608701