2012-11-26 13 views
5

私はPlayer.csクラスによって実装されるPerson.csを持っています。 Personには、ExperienceLevelTypeプロパティがあります。派生クラスのforceプロパティ実装

すべての派生クラスに、独自のバージョンのExperienceLevelTypeプロパティを実装するよう強制します。

public abstract Person 
{ 
    public enum ExperienceLevel { Kid, Teenager} 
    public virtual ExperienceLevel Experience {get; set;} 
} 

public abstract Player:Person 
{ 
    public override ExperienceLevel Experience 
    { 

    } 
} 
+1

「抽象」と宣言できますか? – LightStriker

答えて

22

を持つカスタムインターフェースIPersonを実装することができますことができます:

public abstract class Person 
{ 
    public enum ExperienceLevel { Kid, Teenager} 
    public abstract ExperienceLevel Experience { get; set; } 
} 

派生クラスに強制的にプロパティを実装させ、同時にそれらを助けるための再利用可能な足場を提供する場合は、足場を会員はPersonのです。

+0

素晴らしい。子クラス(Player)のExperienceプロパティをどのように上書きできますか? – user1765862

+1

仮想プロパティと同じ方法です。 –

0

あなたはPersonインターフェースを作る(そして、それは何もimplimentていない)か、Personabstractが何のためにあるのかだあなたの財産

関連する問題