2016-11-05 85 views
1

我具有低于在基类的属性,我想覆盖它在派生类乙使用UML类图在Visual Studio 2013:使用Visual Studio 2013覆盖在C#虚拟财产UML

public class A 
{ 
    public virtual string X 
     { 
      get; 
      set; 
     } 
} 

覆盖这样:

public class B : A 
{ 
    public override string X 
     { 
      get; 
      set; 
     } 
} 

我生成的模型的代码,但在衍生B类没有override关键字

生成的代码:

public class B : A 
{ 
    public string X 
     { 
      get; 
      set; 
     } 
} 
+0

你的问题是什么? –

+0

在模型中,我为类B中的属性x设置覆盖,但生成的代码中没有覆盖关键字? – Fouad

+0

,因为它不知道你的意图,你想做什么你的类 –

回答

0

您的属性X子类B应该有一个{redefines X}约束。这将是新的X改变继承的信息。

虽然在理论上你可以指出你的属性是从一个超类继承而来,但是如果缺失的话你不能假设任何东西。毫无疑问地重新定义了叶子。 我只是从UML角度讲话。我不知道如果Visual Studio支持这一点,也不知道在哪里寻找它。