zulme karşı mukavemet!
Süper Üye
[font='Titillium Web', sans-serif]C#‟ta aynı sınıfın içindeki iki ya da daha fazla metot, parametre deklarasyonları farklı olduğu sürece, aynı ismi paylaşabilirler. Böyle metotlara aşırı yüklenmiş metot denir. Bu işleme de metodun aşırı yüklenmesi adı verilir. Metodun aşırı yüklenmesi, C#‟ın çok biçimliliği uygulama yollarından biridir.[/FONT]
[font='Titillium Web', sans-serif]Genelde bir metodu aşırı yüklemek için onun farklı versiyonlarını deklare etmek yeterlidir. Gerisini derleyici halleder. Yalnız, önemli bir kısıtlamaya dikkat etmelisiniz: Aşırı yüklenmiş her bir metodun parametre tipleri ve/veya sayıları farklı olmalıdır. İki metodun sadece dönüş tiplerinin farklı olması yeterli değildir. Parametrelerinin tip ya da sayıları farklı olmalıdır.[/FONT]
[font='Titillium Web', sans-serif]Şimdi buna bir örnek verelim;[/FONT]
[font='Titillium Web', sans-serif]Genelde bir metodu aşırı yüklemek için onun farklı versiyonlarını deklare etmek yeterlidir. Gerisini derleyici halleder. Yalnız, önemli bir kısıtlamaya dikkat etmelisiniz: Aşırı yüklenmiş her bir metodun parametre tipleri ve/veya sayıları farklı olmalıdır. İki metodun sadece dönüş tiplerinin farklı olması yeterli değildir. Parametrelerinin tip ya da sayıları farklı olmalıdır.[/FONT]
[font='Titillium Web', sans-serif]Şimdi buna bir örnek verelim;[/FONT]
PHP:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace elSec
{
class Program
{
public void ovlDemo()
{
Console.WriteLine("Aşırı Yüklenmiş 1");
}
public void ovlDemo(int a)
{
Console.WriteLine("Aşırı Yüklenmiş "+a);
}
public int ovlDemo(int a, int b)
{
Console.WriteLine("Aşırı Yüklenmiş " + (a+b));
return a + b;
}
static void Main(string[] args)
{
Program p = new Program();
p.ovlDemo();
p.ovlDemo(2);
p.ovlDemo(2,1);
Console.ReadLine();
}
}
}