@Builder可以被放在一个类上,或者一个构造函数上,或者一个方法上。虽然 "在类上 "和 "在构造函数上 "的模式是最常见的使用情况,但@Builder最容易用 "方法 "的使用情况来解释。
使用@Builder注释的方法(从现在开始称为target)会导致生成以下 7 件事:
名为FooBuilder的内部静态类,具有与静态方法(称为构建器)相同的类型参数。
在构建器中: target的每个参数一个私有的非静态非final字段。
在构建器中:一个包私有无参数空构造函数。
在构建器中: target的每个参数的类似“setter”的方法:它与该参数具有相同的类型和相同的名称。它返回构建器本身,以便可以链接setter调用,如上例所示。
在构建器中:一个合理的 toString() 实现。
在包含target的类中:一个builder()方法,它可以创建一个新的builder实例。
————————————————
版权声明:本文为CSDN博主「猫巳」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_31635851/article/details/121825835