2016-08-15 57 views
-2

我有一个叫做“classCountry”的抽象类。本课将扩展为“classUk”,“classFrance”,“classItaly”等不同子类。这是什么样的关系?

是一对一吗? manyToMany?

我在symfony应用程序中使用原则,但我认为这是不相关的。

编辑:我认为这是一个关系oneToOne。如果不是,请随时告诉我。它会帮助我。

EDIT2:一些搜索后,这应该是一个一对多的关系

EDIT3:经过额外的搜索,我发现你不能使用超级一对多关系映射类的学说在这里看到http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/inheritance-mapping.html

我想我将使用oneToOne关系。如果这不是一个好的答案,我会回到这里来提一提。

+0

我已经听过这个问题太多次了...... :( – jarlh

+0

对不起,我在我的项目的MappedSuperclass中创建了教义注释,我需要确定我在做什么 – zm455

+0

@jarlh please sir can你确认这是一个一对一的关系吗? – zm455

回答

2

你在描述一个概括。在泛化中,你没有指定多重性,因为它没有意义。因此,你可以称之为“一对一”,而不是“一对多”,而不是其他任何一种。在元级别(即类与类之间的关系的描述)中,泛化是UML中的manyToMany关系,但是特定语言具有manyToMany(例如C++)或oneToMany(例如Java)。

+0

是的,你是对。你的答案是最好的解释。指定多样性没有意义。我是新的教义和symfony,而且我不得不指定一个关系。我错了。 – zm455