建造(Builder)模式
2021-03-22 本文已影响0人
quanCN
简介
构建者模式是对象的创建模式。建造模式可以将一个产品的内部表象与产品的生产过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象
一个产品通常有不同的组成成分作为产品的零件,这些零件有可能是对象,也有可能不是对象,它通常又叫产品的内部表象。使用建造模式可以使客户端不需要知道所生成的产品对象有哪些零件,每个产品的对应零件彼此有何不同,是怎么建造出来的,以及怎样组成产品
建造模式的简略图如下
实现
构建者模式UML图如下所示
代码实现如下:
public class Book {
private String name;
private Double price;
//getter setter Constructor ...
public static Book.Builder builder() {
return new Book.Builder();
}
public static class Builder{
private String name;
private Double price;
public Builder name(String name) {
this.name = name;
return this;
}
public Builder price(Double price) {
this.price = price;
return this;
}
public Book build(){
return new Book(name,price);
}
}
}
- test
public static void main(String[] args) {
Book book = Book.builder().name("Thinking in JAVA").price(99.99).build();
System.out.println(book);
}