آموزش سربارگذاری متد (Method Overloading) در سی شارپ

آموزش سربارگذاری متد (Method Overloading) در سی شارپ

overloading تابع، قابلیتی است که به یک کلاس اجازه میدهد، تعداد دو یا بیشتر تابع با نام یکسان داشته باشد. در برنامه نویسی به زبان سی شارپ با method overloading ، چندین متد می توانند نام یکسانی با پارامترهای مختلف داشته باشند

زمان مطالعه: 3 دقیقه
بازدید: 1167
پرسش و پاسخ: 0
int MyMethod(int x)
float MyMethod(float x)
double MyMethod(double x, double y)

مثال زیر را در نظر بگیرید ، که دارای دو متد است که اعداد از نوع مختلف را اضافه می کند:

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);
}

به جای تعریف دو متد که باید همان کار را انجام دهند ، بهتر است یکی را overload کنید.

در مثال زیر ، متد PlusMethod را overload می کنیم تا برای int و double کار کند:

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);
}

توجه: چندین متد می توانند نام یکسانی داشته باشند به شرط آنکه تعداد و یا نوع پارامترها متفاوت باشد.

بهزاد میرزازاده
مسیر درست با پرسش های درست ساخته می شود

مشاهده تمام مطالب نویسنده