lombok @AllArgsConstructor 与使用 Objects.requireNonNull() 定义我自己的构造函数
lombok @AllArgsConstructor vs defining my own constructor using Objects.requireNonNull()
我一直在我的代码中使用 lombok 的 @AllArgsConstructor
注释来保持代码整洁。但我刚刚注意到我的同事使用 Java7 的 Objects.requireNonNull()
定义了他们自己的构造函数,并将参数传递给构造函数。
谁能告诉我这样做的优点(如果有的话)或缺点是什么?
默认情况下,使用 @AllArgsConstructor
不会创建任何 null
检查。您可以按照 here.
所述,通过使用 @NonNull
注释您想要非 null
的字段来添加这些字段
所以在我看来,创建自己的构造函数除了可以自定义抛出的异常消息之外没有任何好处,使用 ProjectLombok
是不可能的(但你需要it?) Lombok的message只是字段名即null
.
我一直在我的代码中使用 lombok 的 @AllArgsConstructor
注释来保持代码整洁。但我刚刚注意到我的同事使用 Java7 的 Objects.requireNonNull()
定义了他们自己的构造函数,并将参数传递给构造函数。
谁能告诉我这样做的优点(如果有的话)或缺点是什么?
默认情况下,使用 @AllArgsConstructor
不会创建任何 null
检查。您可以按照 here.
@NonNull
注释您想要非 null
的字段来添加这些字段
所以在我看来,创建自己的构造函数除了可以自定义抛出的异常消息之外没有任何好处,使用 ProjectLombok
是不可能的(但你需要it?) Lombok的message只是字段名即null
.