对于有经常使用制定者的一个长长的清单班,我发现这种方式非常有用(虽然我最近看了一下Builder模式在有效的Java是有点相同).
基本上,所有setter方法都返回对象本身,因此您可以使用如下代码:
myClass .setInt(1) .setString("test") .setBoolean(true);
塞特斯最终只返回这个:
public MyClass setInt(int anInt) { // [snip] return this; }
你有什么意见?优缺点都有什么?这对性能有影响吗?
也称为c ++中的命名参数idiom.
@pek
链式调用是Java 7的提议之一.它说如果方法返回类型为void,它应该隐式返回它.如果你对这个主题感兴趣,那么Alex Miller的Java 7页面上有很多链接和一个简单的例子.
这称为Fluent界面,供参考.
就个人而言,我认为这是一个非常巧妙的想法,但真的是一个品味的问题.我认为jQuery以这种方式工作.