我在类似以下的类中创建经过修改的设置器:
public class Example {
private String name;
private Integer id;
...
public Example withName(String name) {
this.name = name;
return this;
}
public Example withID(Integer id) {
this.id = id;
return this;
}
...
}
因此实例的初始化变得更加清晰(您可以在不重复实例名称的情况下看到已设置的字段):
Example example =
new Example()
.withName("Walter")
.withID(23);
intellij-idea是否具有重构/代码约束方法来自动构建类的链初始化?
答案 0 :(得分:1)
您可以使用Code | Generate...
自动创建二传手。首先将字段添加到类中:
class Example {
private String name;
private Integer id;
}
现在调用Code | Generate...
(在Mac上为 Cmd + N ),然后选择Setter
。在出现的对话框顶部选择模板Builder
。选择要为其生成设置器的字段,然后单击OK
。
结果:
class Example {
private String name;
private Integer id;
public Example setName(String name) {
this.name = name;
return this;
}
public Example setId(Integer id) {
this.id = id;
return this;
}
}
如果您希望setter方法以with
而不是set
开头,则可以修改模板。
答案 1 :(得分:0)