在我的程序中,我使用了一个 ArrayList of ArrayList of booleans。我需要将这些价值观从一个班级带到另一个班级,而我一直在通过简单地制作它来做到这一点static
。
但我听说这可能味道不好。我在想,最好的办法是制作一个以该集合为中心的对象(顶级对象),可能还有一些方法来配合这个。
所以我的问题:
- 这是否更好?
- 如何在整个应用程序中保留一个顶级对象的实例,以便我的值可以传输?我在想一个私有构造函数和静态方法。还是我应该只去公共领域?批准的方法是什么?
-如果您不想使用static
ArrayList,那么您可以创建一个类Singleton
并将该ArrayList放入该类中。
例如:
public class Test{
private ArrayList<String> arr = new ArrayList<String>();
private static Test uniqueInstance = new Test();
private Test{} // Make constructor Private
public static Test getInstance(){
return uniqueInstance;
}
}
我需要将这些价值观从一个班级带到另一个班级
一些构造函数注入怎么样?
public class A (ArrayList<ArrayList<Boolean>> list)
接线可以委托给IOC(控制反转)框架,例如 Spring,或者您可以使用DIY-DI手动完成
我会远离,Singletons
因为