Java 类图-这种自反关系看起来如何?
作为我职业生涯的一部分,我正在做y firsts类图,在阅读作业要求时,我发现一个动物对象的两个属性是动物的母亲和父亲,如果他们有血统的话 我问了课程老师,但他告诉我的唯一一件事是,我的假设是正确的,即这是一种反身关系,但下面的疑问仍然存在 -这是如何在代码中实现的 我们以前从未见过这种关系,我只是在浏览StackOverflow时发现的 此外,我们正在按需管理对象,因此,我们最近介绍了向量和树映射的使用,而不是ArrayList 这就是我的类图现在的样子 Padres=父母,这种多样性的理由是,一只动物可能有或可能没有一个母亲/父亲的双亲注册Java 类图-这种自反关系看起来如何?,java,class-diagram,Java,Class Diagram,作为我职业生涯的一部分,我正在做y firsts类图,在阅读作业要求时,我发现一个动物对象的两个属性是动物的母亲和父亲,如果他们有血统的话 我问了课程老师,但他告诉我的唯一一件事是,我的假设是正确的,即这是一种反身关系,但下面的疑问仍然存在 -这是如何在代码中实现的 我们以前从未见过这种关系,我只是在浏览StackOverflow时发现的 此外,我们正在按需管理对象,因此,我们最近介绍了向量和树映射的使用,而不是ArrayList 这就是我的类图现在的样子 Padres=父母,这种多样性的理由
提前非常感谢。我不知道我是否正确理解了这个问题-下面的代码有帮助吗
public class Animal {
private Animal padre;
private Animal madre;
// ...
// other fields
// ...
//one of the constructors.
public Animal(final Animal padre, final Animal madre)
{
this.padre = padre;
this.madre = madre;
}
// ...
// rest of your code
// ...
}
或者,如果它应该是一个数组,则:
//field
private Animal[] padres;
//constructor
public Animal(final Animal[] padres) {
if (padres != null) {
if (padres.length > 2) {
throw new IllegalStateException("Too many parents");
}
}
this.padres = padres;
}
这很有帮助,谢谢,我主要想知道一个反身关系在代码上会是什么样子。