`
samsongbest
  • 浏览: 162364 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

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

  • 大小: 53.4 KB
  • 大小: 99.9 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics