キソスタ

基礎を調べるきっかけを集めてみました。

C#のoverrideについて初心者でも理解できるような例題とサンプルプログラムを用いて解説

C#のoverrideについて例題とサンプルプログラムを用いて解説です。

 

 

 

C#のoverrideについて初心者でも理解できるような例題とサンプルプログラムを用いて解説

C# の override は、基底クラス (base class) の振る舞いを派生クラス (derived class) で上書きすることを表します。これは、派生クラスが基底クラスの振る舞いを継承しつつ、特定の状況では異なる振る舞いを持たせたい場合に役立ちます。

例えば、基底クラス「動物」に「鳴く」というメソッドがありますが、犬は「吠える」、猫は「ニャー」と鳴くという特徴があります。このような場合、「犬」や「猫」を表す派生クラスにそれぞれ特別な振る舞いを追加することができます。

以下がサンプルプログラムです。

csharp
Copy code
using System;

class Animal
{
    public virtual void MakeSound()
    {
        Console.WriteLine("The animal makes a sound.");
    }
}

class Dog : Animal
{
    public override void MakeSound()
    {
        Console.WriteLine("The dog barks.");
    }
}

class Cat : Animal
{
    public override void MakeSound()
    {
        Console.WriteLine("The cat meows.");
    }
}

class Program
{
    static void Main(string[] args)
    {
        Animal animal = new Animal();
        Dog dog = new Dog();
        Cat cat = new Cat();

        animal.MakeSound(); // "The animal makes a sound."
        dog.MakeSound();    // "The dog barks."
        cat.MakeSound();    // "The cat meows."
    }
}

 

上記のサンプルでは、基底クラス「Animal」に「MakeSound」というメソッドを定義しています。派生クラス「Dog」や「Cat」は、このメソッドを override して、独自の振る舞いを定義しています。

このように、override を使うことで、基底クラスの振る舞いを継承しつつ、派生クラスで独自の振る舞いを追加することができます。