为什么 Lombok 的 @Builder 中有包私有构造函数?

Cro*_*ool 5 java builder lombok

最近,我遇到了 Lombok 的构建器,坦白说很喜欢它。然后我了解到许多资源(例如Effective Java)都描述了Builder 模式。 有点像这样

现在,在此模式中,构造函数保持私有,以便只能通过使用构建器来创建类的实例。

但是,在 Lombok 的构建器文档中,构造 函数可见性保持为包私有。将其保留为私有包的原因可能是什么?

小智 2

您的问题的答案在https://softwareengineering.stackexchange.com/questions/362265/builder-with-constructor-or-factory-method中有详细描述。我发现您的问题更具体于 Project Lombok 的设计,因此您可能想加入社区。但总的来说,我同意已接受的答案以及 Lombok 使用工厂方法实现构建器模式的方式。