Junior
C#'ta yöntem aşırı yüklemesi nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
C# dilinde Yöntem Aşırı Yükleme (Method Overloading), aynı isimde, ancak farklı imzalarla birden fazla yöntem tanımlamaya olanak tanır.
Yöntem İmzası şunları içerir:
- Yöntem adı.
- Parametre listesindeki parametre sayısı ve türleri.
İmzada yer almaz:
- Dönüş tipi.
- Parametre modifikasyonları (örneğin,
ref,out).
Örnek:
// Aşırı yüklü yöntemlere sahip sınıf
public class Calculator
{
// Aşırı yükleme 1: İki tamsayıyı toplama
public int Add(int a, int b)
{
return a + b;
}
// Aşırı yükleme 2: İki ondalıklı sayıyı toplama (diğer parametre türleri)
public double Add(double a, double b)
{
return a + b;
}
// Aşırı yükleme 3: Üç tamsayıyı toplama (başka parametre sayısı)
public int Add(int a, int b, int c)
{
return a + b + c;
}
// Bu AŞAĞIDAKİ DEĞİLDİR: Sadece dönüş tipiyle farklılık gösterir
/*
public double Add(int a, int b)
{
return (double)(a + b);
}
*/
}
Derleyici, çağrı sırasında iletilen argümanların türleri ve sayısına göre hangi yöntemin çağrılacağını belirler. Bu, statik bağlama (Static Binding) veya erken bağlama (Early Binding) olarak bilinir.
Yöntem aşırı yüklemenin avantajları:
- Kodun okunabilirliğini ve kullanılabilirliğini artırır.
- Benzer işlemleri, farklı veri türleri veya farklı giriş parametreleri setleriyle aynı isim altında sunar.