建造者(Builder)模式
建造者模式(Builder Pattern)又称生成器模式,熟悉lombok的朋友应该有印象,lombok有一个注解(Annotation)叫@Builder。 import lombok.Builder; import lombok.ToString; @Builder @ToString public class Book { private Long id; private String name; private String author; } 然后是测试类: public class BuilderTest { public static void main(String[] args) { Book book = Book.builder().id(1L).name("《西游记》").author("吴承恩").build(); System.out.println(book); } } 执行打印输出: Book(id=1, name=《西游记》, author=吴承恩) 我们可以看到main方法构造Book对象的时候,并没有new,而是用Book的builder方法链式调用来构造出来Book对象的。 我们可以去target目录查看编译的class文件,发现Book其实一共有两个class文件: Book.class Book$BookBuilder.class