生成链式二传手

时间:2017-06-06 11:53:16

标签: java ide

我想创建一个包含20个文件的大型Java对象,大多数IDE提供了一个生成函数,它允许我为我的对象的所有元素生成getter和setter。

问题是,我是method chaining的忠实粉丝,我在所有对象上使用它,但我必须在每个return this的末尾添加setters,不是很方便。

是否可以使用IDE的特殊插件生成setter?

3 个答案:

答案 0 :(得分:4)

可以IntelliJ IDEA

  
      
  1. call"生成>设定器"菜单
  2.   
  3. 选择模板" Builder"。
  4.   
  5. 选择要生成setter的所有字段
  6.   
  7. 点击'确定'。
  8.   

这是生成的结果(对于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());
    }
}