我想创建一个包含20个文件的大型Java对象,大多数IDE提供了一个生成函数,它允许我为我的对象的所有元素生成getter和setter。
问题是,我是method chaining的忠实粉丝,我在所有对象上使用它,但我必须在每个return this
的末尾添加setters
,不是很方便。
是否可以使用IDE的特殊插件生成setter?
答案 0 :(得分:4)
可以IntelliJ IDEA
:
- call"生成>设定器"菜单
- 选择模板" Builder"。
- 选择要生成setter的所有字段
- 点击'确定'。
醇>
这是生成的结果(对于1个字段):
public MyClass setParam(String param) {
this.param = param;
return this;
}
也可以在那里创建自己的模板)
答案 1 :(得分:1)
它通常被称为"流利" setter方法。 a plugin for Netbeans会自动为您执行此操作。我非常确定你可以在eclipse或IntelliJ中找到相同的东西。
答案 2 :(得分:0)
你可以试试lombok
lombok.accessors.chain = [true | false](默认值:false)
如果设置为true,则生成的setter将返回此值(而不是void)。 @Accessors注释的显式配置链参数优先于此设置。
这是你想要的吗? https://projectlombok.org/features/GetterSetter.html@Accessors(chain = true)
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor(access=AccessLevel.PRIVATE)
public class LombokTest {
private String test;
public static void main(String []args) {
LombokTest a = new LombokTest();
System.out.println(a.setTest("amber").getTest());
}
}