04-09-2017, 09:38 PM
Örneğin int tipinde iki sayıyı çarpan bir hesapla() metodu oluşturmuştuk.Ayrı yetten de double tipinden de çarpma yapan bir hesapla() metodumuzun olduğunu varsayalım.İşte burada overloading kavramı devreye girmektedir.Yani iki metodumuzun da isimleri aynı oluyor.
Overload ifadesinde aynı sayıda ve tipte parametre beklenen iki metod var ise, “Aynı imzaya sahip üye daha önce tanımlanmıştır.” uyarısı alınır, dolayısıyla derleme hatası ortaya çıkar.Hemen basit bir örnek verecek olursak eğer;
Kod:
Yukarıdaki örnekde metod1 adında iki adet metod oluşturduk ve bunları ekrana yazdırmış olduk.
NOT : İki isimde aynı metod oluşturabilmemiz için(yukarıdaki gibi) parametrelerinin farklı olması gerekmektedir.
Overload ifadesinde aynı sayıda ve tipte parametre beklenen iki metod var ise, “Aynı imzaya sahip üye daha önce tanımlanmıştır.” uyarısı alınır, dolayısıyla derleme hatası ortaya çıkar.Hemen basit bir örnek verecek olursak eğer;
Kod:
Kod:
public class overloading {
public static void main(String[] args) {
System.out.println(metod1(2));
System.out.println(metod1(4, 8));
}
static int metod1(int a)
{
return a;
}
static int metod1(int a, int b)
{
return a;
}
}
Yukarıdaki örnekde metod1 adında iki adet metod oluşturduk ve bunları ekrana yazdırmış olduk.
NOT : İki isimde aynı metod oluşturabilmemiz için(yukarıdaki gibi) parametrelerinin farklı olması gerekmektedir.