Overloading Kavramı
Visual Basic.Net'te, aynı faaliyet alanı içerisinde, aynı isme sahip birden fazla methot bir arada bulunabilir. Ancak isimleri aynı oan methot'ların birbirlerinden ayırd edilebilmesi için parametrik yapılarının farklı olması zorunluluğu vardır. Nesne Yönetimli programlama tekniğinde bu kavram; "Fonksiyon Overloading" olarak bilinir. Parametrik yapının farklı olmasından kastedilen; fonksiyona geçirilen parametrelerin tr ve sayıca farklı olmasıdır. (Parametre değişkenlerinin, isimlerinin farklı olması yada geri dönüş değerlerindeki farklılık geçersizdir!)
Derleyici, aynı isimle tanımlanmış prosedür'lerden biri çağrıldığında ; çaırma ifadesindeki, prosedüre geçirilen parametrelerin tür ve sayılarına bakarak, tanımlanan metot'lardan hangisini çağırması gerektiğini anlar.
Örnek:
Aşağıdaki konsol uygulamasında parametrik yapıları farklı olan, ancak aynı isme sahip (Display) üç farklı metot bulunmaktadır. Display() metod, main içerisinden, farklı parametrelergeçirilmek süreti ile üç kez çağrılmaktadır.
Module Module1
Public Sub Display()
Console.Writeline("1. Display() metodu çağrıldı")
End Sub
Public Sub Display (ByVal s as String)
Console.Writeline("2. Display() metodu çağrıldı")
End Sub
Public Sub Display(ByVal s as String, ByVal i as integer)
Console.Writeline("3. Display() metodu çağrıldı")
End Sub
Sub Main()
Display("Deneme") '2. Çağrılır
Display("Deneme", 2323) '3. Çağrılır
Display() '1. Çağrılır
End Sub
End Module