如果我有以下课程,Foo
,其中Bar
也是一个课程:
public class Foo {
private Bar baz;
public Foo() {
}
}
我是否正确地认为,如果我baz
在声明它的地方进行初始化,我将在和之间建立聚合关系Foo
,Bar
并且如果我baz
在Foo
的构造函数中进行初始化,我将拥有复合关系?像这样:
聚合(我认为这可能不正确?):
public class Foo {
private Bar baz = new Bar();
public Foo() {
}
}
合成的:
public class Foo {
public Foo() {
baz = new Bar();
}
}
我对 Java 有点陌生,并且看到一切都是一个类,我很难想象(特别是)聚合关系是如何工作的,除非我将baz
static
. 如果我baz
在其他地方创建并将其传递给 的构造函数Foo
,那么不baz
只是其他类的组合吗?有点迷茫。