java - 在调用 build() 之前,@Builder 对象的类类型是什么?
问题描述
我以前做过,但忘记了,无法在网上轻松找到答案。
假设我在 POJO 上有 lombok
@Builder
@NoArgsConstructor
class Car {
private int gallons;
private int wheels;
private String name;
}
我想在某些逻辑中使用构建器符号
public Car getCar(boolean isNew) {
<I dont know what type to put here> carBase = Car.builder().wheels(4);
if(!isNew) {
return carBase.gallons(10).build();
}
else {
return carBase.gallons(0).build();
}
}
我应该用什么类型来填写?
解决方案
好的,所以我实际上遇到了这个错误为什么 Lombok @Builder 与这个构造函数不兼容?这打破了我的@Builder
课。
显然,lombok 会在用 call 注释的类中生成一个静态嵌套类,所以要回答我原来的问题,会有一个有效的类@Builder
叫做.<classname>Builder
Car.CarBuilder
推荐阅读
- python - 条件语句就像python中的逻辑谬误?
- opencv - 通过扫描获得的噪声图像集中检测形状
- c# - 为什么当我想添加新客户时我的客户 ID 始终为空
- c++ - 如果存在搜索值,则编辑文本文件
- sql - 在 SQL Server 2019 (v15) 中为多个表重命名多个列
- delphi - 如何从 ID 中提取第 7 个字符
- sql - 我们如何将 CURRENT_TIMESTAMP 格式化为“M/DD/YYYY hh:mm AM/PM”?
- python - 梯度提升分类器中的排列重要性较低
- google-apps-script - onOpen() 函数在桌面上触发,但在 Android 上不触发
- c++ - 如何像 python 语法一样在 C++ 中“剪切”向量