2016-06-10 116 views
1

嘿,所有!新的java程序员在这里,试图学习好的风格。有一种简写方法可以在一行中调用一堆类方法吗?比如说我想做的事:Java中是否有简写的方法来连续调用一堆类方法?

Dog gus = new Dog(); 

gus.fetch(); 
gus.sit(); 
gus.lieDown(); 
gus.rollOver(); 

例如,在VBasic中,我可以把它全部放在一个With块中。 java有没有类似的东西?

+3

都能跟得上........... – Reimeus

+2

没有,但可以使用构建器模式来完成。基本上使所有这些方法'返回这个'并链接它们。尽管如此,对于外部API的设计选择却做不了多少。 –

+0

该死的。这是一个有趣的解决方法,尽管@ Meguy26,不幸的是它不是真的很干净,我想用它。不管怎么说,多谢拉! – Paw

回答

2

你有几个选择。我认为你想要模式。你可以建立一个调用所有方法的帮助器方法。你的另一个选择是让你的方法返回父对象。

public Dog fetch(){ 
    //Do stuff for fetch 
    return this; 
} 
public Dog sit(){ 
    //Do stuff for sit 
    return this; 
} 
public Dog lieDown(){ 
    //Do stuff for lieDown 
    return this; 
} 
public Dog rollOver(){ 
    //Do stuff for rollOver 
    return this; 
} 

然后你可以打电话给他们,如:

Dog gus = new Dog(); 

gus.fetch().sit().lieDown().rollOver(); 
+0

制定完善的答案!我认为辅助方法可能是一条可行的路线,但在这种情况下,调用方法的情况很少,因此将所有方法写出来可能过于矫枉过正。谢谢! – Paw

相关问题