(现在还在研究OO原则,以便更好地理解OOP。)
三个(JPA)实体具有以下关系:
A 有一个 B 的集合, B 有一个字段'a'指向 A (双向)关系)
B 有一个 C 的集合, C 有一个字段'b'指向B(双向关系)
(我会说使用JPA你会得到免费的紧耦合。当然不是那么好。)
A , B 和 C 有一个字段'nr'。这些字段一起形成由点划分的id。这样的事情:####。####。####
现在我想问 A 来构建这个号码。根据OO原则,这样做的正确方法是什么?在我看来, C 不应该知道 B 和 B 而不是 A 。
答案 0 :(得分:0)
我说这是一个新类 ID ,其构造函数 ID(A a,B b,C c)。
根据您对象的真实含义,如果您愿意,可以选择 A 创建这些内容的责任,但正如您所指出的那样 - 不应该由来完成B 或 C 。
即
class A {
ID newID(B b, C c) {
return new ID(this, b, c);
}
}