C# メソッドのオーバーロード
メソッドのオーバーロード
メソッドのオーバーロードでは、複数のメソッドが異なるパラメーターを持つ同じ名前を持つことができます。
例
{.language-csharp .techis-white}
int MyMethod(int x)
float MyMethod(float x)
double MyMethod(double x, double y)
次の例を考えてみましょう。この例には、異なる型の数値を加算する2つのメソッドがあります。
例
{.language-csharp .techis-white}
static int PlusMethodInt(int x, int y)
{
return x + y;
}
static double PlusMethodDouble(double x, double y)
{
return x + y;
}
static void Main(string[] args)
{
int myNum1 = PlusMethodInt(8, 5);
double myNum2 = PlusMethodDouble(4.3, 6.26);
Console.WriteLine("Int: " + myNum1);
Console.WriteLine("Double: " + myNum2);
}
同じことを行う2つのメソッドを定義する代わりに、1つをオーバーロードすることをお勧めします。
以下の例では、PlusMethod
をオーバーロードして、int
とdouble
の両方で使えるようにしています。
例
{.language-csharp .techis-white}
static int PlusMethod(int x, int y)
{
return x + y;
}
static double PlusMethod(double x, double y)
{
return x + y;
}
static void Main(string[] args)
{
int myNum1 = PlusMethod(8, 5);
double myNum2 = PlusMethod(4.3, 6.26);
Console.WriteLine("Int: " + myNum1);
Console.WriteLine("Double: " + myNum2);
}
注:パラメータの数や型が異なる限り、複数のメソッドに同じ名前を付けることができます。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。