更具体的问题: //有两个A和B类:
Class A {
public static List<B> b = new ArrayList<B>();
}
Class B {
}
在我的模式中,我想要来自B类的对象b。然后在所有情况下,对象b将涉及来自A类的至少两个对象“a_x”和“a_y”。如何我创造了这样的关系?
答案 0 :(得分:1)
首先,这个public static List<B> b = new List<B>();
不会编译。
您可能需要公开static List<B> b = new ArrayList<B>();
您无法实例化Interface.So提供了一个concreate实现。Ex:ArrayList
第二件事,你应该直接在你创建这个list
的地方添加它们。
答案 1 :(得分:0)
如果您的关系中每个B
与至少两个 A
个实例相关,则B
需要一个收集类型的字段。例如:
public class B {
private List<A> relatedAList = new ArrayList<>();
...
}
这需要是一个实例字段,而不是静态字段。
但是如果你有一个2+
关系,那么调用相关对象x
和y
就没有意义......因为如果有一个{{1}怎么办? },和z
等等。除非每个p
的相关A
个对象的数量都有固定的上限,否则您必须使用某种集合来表示每个B
的相关B
第
答案 2 :(得分:0)
这是关系:
class A
{
public List<B> b = new ArrayList<B>();
}
class B
{
A ax;
A ay;
B(A ax, A ay)
{
this.ax = ax;
this.ay = ay;
}
}
这是你需要的吗?
为什么你需要这样的相关性?