我想知道为什么setter方法中有return this;
。这意味着什么?
new Person().setName("alex");
这被称为流畅的接口。
Builder模式并不一定要求它必须流畅,但它通常就是这样实现的。它允许Builder的用户将多个调用串在一起(即"流利"(:
Persoon al = Person.builder()
.setFirstName("Albert")
.setLastName("Einstein")
.setOccupation("Genius")
.setGender(Gender.Male)
.build();
正如已经回答的那样,这不是必要的,但这是惯例。通过使用它,您可以利用方法链接(注意,方法链接为每个中间步骤消除了一个额外的变量(。您可以看到:为什么强烈鼓励使用构建器模式,而不是在Java中直接实现流畅的API?使用流畅的界面与构建器模式