継承を用いるべきとき
継承の仕方の説明の前に、どういう時にすべきなのかを書いておきたいと思います。
使うべき場合はよく「is a関係」(kind of関係)が成り立つ時と表現されるようです。
例えば「スライムは敵である」「プレイヤーは人間である」といった感じです。
つまり「勇者は盾を持っている」といった場合には用いないようですね。
継承の基本
継承はすでに定義されているクラスの性質を受け継ぎ、新しいクラスを作成することです。
public class Humanoid{ public string FirstName { get; set; } public string FamilyName { get; set; } public string GetName() { return FirstName + FamilyName; } } public class Enemy : Humanoid { public int Hp { get; set; } public int Exp { get; set; } }
継承元となるクラスを「スーパークラス」や「既定クラス」と呼び、継承して新しく作成したクラスを「サブクラス」や「派生クラス」と呼びます。
これを使った例を示してみます。
public class Hoge : MonoBehaviour { private void Start() { Enemy slime = new Enemy { FirstName = "メタル", FamilyName = "スライム", Hp = 15, Exp = 50 }; Debug.Log("Name: " + slime.GetName()); } }
さいごに
簡単にクラスの継承についてまとめてみました。
継承はオブジェクト指向にとって重要な要素なのでこれからも勉強していきたいです!