5

我想生成方法链接设置器(返回被设置对象的设置器),如下所示:

public MyObject setField (Object value) {
    this.field = value;
    return this;
}

这使得单行实例化变得更容易,我发现它更容易阅读:

myMethod (new MyObject ().setField (someValue).setOtherField (someOtherValue));

可以修改 Eclipse 的模板来执行此操作吗?我已更改要包含的内容,return this;但签名未更改。

4

2 回答 2

3

我确认 eclipse(最高 3.5RC1)不支持“方法链接”设置器生成。
它只允许注释和正文自定义,而不是 setter 的 API 修改(意味着生成的 setter 仍然返回' void')。

可能是插件生成器模式可以在这里提供帮助......(虽然未经测试)

经典方式(不是“傻瓜”,因为它总是会生成一个“ void”作为 setter 的返回类型):(来源:eclipse.org
替代文字

比。新方法(Builder Pattern,可能用作Eclipse 插件
替代文本 http://www.javadesign.info/media/blogs/JDesign/DesignConcepts/DesignPatterns/GOF/Creational-BuilderPatternStructure.jpeg

于 2009-05-22T15:53:13.080 回答
2

不要自己使用 eclipse,但如果找不到功能,则必须更改其中一个标准模板。

顺便说一下,它被称为方法链接(这可能有助于一两次谷歌搜索)。

于 2009-05-22T15:48:30.913 回答