2016-11-05 34 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支持這一點,也不知道在哪裏尋找它。