何が良く見えるか、抽象クラスとプロパティで実際にいつ使用するか、または非抽象プロパティをいつ使用するかはよくわかりません。簡単な例を作ってみます。私がこれを持っているとしましょう:
abstract class Human
{
public GenderType Gender { get; set; }
public string Name { get; set; }
public Date Born { get; set; }
public bool IsNerd { get; set; }
abstract public void Speak();
abstract public void Sleep();
abstract public void AnoyingPeopleOnStackOverflow();
//... so on
}
class Peter : Human
{
//Peter is special, he got a second name
//But thats all, everything else is the same as like on other humans
public string SecondName { get; set; }
//...override abstract stuff
}
これでいいですか?私が理解したように、オーバーライドしたくない場合は抽象プロパティを使用する必要はありません。Speak
この状況では、などのメソッドだけSleep
を抽象化する必要があります。
さて、これでよければ、いつ抽象プロパティを使用するか、または使用する必要がありますか?