我主要对Java感兴趣,但我认为这是一个普遍的问题。最近我一直在使用Arquillian框架(ShrinkWrap
),该框架使用了大量的方法链式调用。StringBuilder、StringBuffer等类中也有方法链式调用的例子。使用此方法的明显优点之一是减少冗余。
现在我想知道,为什么不将所有返回void
参数的方法都实现为链式调用呢?肯定存在一些明显而客观的缺点。因为如果所有方法都可链接,我仍然可以选择不使用它。
我不是要求改变Java中现有的代码,在某个地方会出现问题,但从未来Java框架设计的角度考虑,解释为什么没有使用链式调用也很好。
我找到了一个类似的问题,但原问题的提问者实际上正在思考为什么链式调用被认为是一个好的实践: Method chaining - why is it a good practice, or not?
虽然已经有一些答案可供参考,但我仍然不确定链式调用的所有优缺点以及是否将所有无返回值方法都实现为链式调用是否有价值。