为什么org.eclipse.uml2.uml.Class不是ECores EClass的子类?
我试图理解ECore中UML实现与其类之间的关系为什么org.eclipse.uml2.uml.Class不是ECores EClass的子类?,uml,ecore,Uml,Ecore,我试图理解ECore中UML实现与其类之间的关系 在UML抽象语法中,有一些类,如Class、Property、Operation等,它们都是从EOObject扩展而来的(通过相当长的层次结构)。但是为什么不从EClass开始,这不是更直观吗?UML元类类类、属性、操作等。扩展EObject而不是EClass,因为它们是EObject而不是EClass。。。 我的意思是,EClass、EOperation等是EMF核心,用于实现元模型,例如UML,因此UML元类是EClass=>EObject的
在UML抽象语法中,有一些类,如
Class
、Property
、Operation
等,它们都是从EOObject扩展而来的(通过相当长的层次结构)。但是为什么不从EClass开始,这不是更直观吗?UML元类类类、属性、操作等。扩展EObject而不是EClass,因为它们是EObject而不是EClass。。。
我的意思是,EClass、EOperation等是EMF核心,用于实现元模型,例如UML,因此UML元类是EClass=>EObject的实例。谢谢您的回答。我还是不完全明白。您能否提供更多的细节,或者是一个从
EClass
扩展而来的元类示例。我知道EClass
扩展了EObject
,与UMLsClass
相同,但Class
并不是从EClass
扩展而来的。它与EMF的工作原理有关。请看一看,由于EMF,UML元模型已经完成,即创建了EClass的实例(UML类、UML属性等)。然后执行代码生成,以根据此UML元模型描述生成UML实现。所有生成的类、类、属性等都实现了EOObject,以拥有一组基本的服务,例如序列化。