我正在编写一个库,为了提高可读性,我想强制用户使用嵌套方法来调用正确的函数。
例如,这是我的类(class):
public class Foo{
public void methodA(){}
public void methodB(){}
public void methodC(){}
}
我对用户的期望:
Foo foo = new Foo();
foo.methodA.methodB();
foo.methodA.methodC();
通过调用方法A作为前缀来调用方法B和C
最佳答案
读完你的问题后,我认为你在问构建器设计模式,其中每个方法返回类型都是相同的类对象,并且你可以像这样进行调用层次结构。
obj.aMethod().bMethod().cMethod();
在您的示例中只需这样做:
public class Foo{
private static final Foo instance = new Foo();
private Foo(){}
public static Foo getInstance(){
return instance;
}
public Foo methodA(){
//Do stuff
return getInstance();
}
public Foo methodB(){}
public Foo methodC(){}
}
现在你可以像objfoo.getInstance().methodA().methodB();这样调用
希望对您有帮助。 To read more about that pattern
关于java - 如何在java中嵌套方法以强制用户使用嵌套名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56845629/