Java'da Yöntem Aşırı Yükleme [Örneklerle]
Yayınlanan: 2020-11-12Java, Nesne Yönelimli Programlama kavramlarını takip eden çok yönlü bir dildir. Nesne yönelimli programlamanın birçok özelliği, kodu modüler, yeniden kullanılabilir, esnek ve hata ayıklaması kolay hale getirir. Kalıtım, polimorfizm, kapsülleme ve soyutlama gibi Nesne yönelimli programlamanın birçok özelliği vardır.
Bu yazımızda, polimorfizm türü olan Java'da metot aşırı yüklemesini ele alacağız.
İçindekiler
polimorfizm
Polimorfizm, farklı formlarda görünme yeteneği anlamına gelir. Aynı yöntemin farklı yöntemler kullanarak farklı davranışlar göstermesini sağlar. İki tür Polimorfizm vardır: Yöntem Aşırı Yükleme ve Yöntem Geçersiz Kılma. Yöntem aşırı yüklemesi, birden çok yöntemin aynı ada ancak farklı argümanlara sahip olduğu anlamına gelir.
Swiggy, Quora, IMDB ve daha fazlası gibi uygulamalar oluşturmayı öğreninYöntem Geçersiz Kılma, alt sınıfın, üst sınıfla aynı ada sahip ancak farklı bir uygulamaya sahip bir yönteme sahip olabileceği anlamına gelir. Bu makalede Yöntem Aşırı Yüklemesini daha ayrıntılı olarak tartışacağız. Yöntem Geçersiz Kılma için upGrad'ı ziyaret edebilir ve içgörüler alabilirsiniz.
Java'da Yöntem Aşırı Yüklemesi
Java'da Yöntem Aşırı Yükleme, Nesne Yönelimli Dilin en kullanışlı özelliklerinden biridir. Bir sınıfın aynı ada sahip birden çok metoda sahip olmasına izin verir. Bu yöntemlerin sahip olduğu tek fark, bu yöntemlerden geçirilen farklı parametre listesidir.
Basit bir örnekle basit terimlerle anlaşılabilir. Bir sınıf eklemenin add() adlı iki yöntemi vardır, bir yöntem int a ve int b parametrelerine sahipken, diğerinde üç tamsayı parametresi vardır, yani int a, int b ve int c. Bu nedenle, add() yönteminin aşırı yüklendiği söylenir.

Yürütülecek yöntem, yöntem çağırma ifadesinde geçirilen parametre sayısına bağlı olacaktır. Örneklemek gerekirse, add(20,30) iki parametreli add() yöntemini çağıracak ve add(10,20,30) üç parametreli add yöntemini çağıracak.
Bir Yöntemi Aşırı Yüklemenin Farklı Yolları
Java'da yöntem aşırı yüklemesi farklı şekillerde gerçekleştirilebilir. Anladığımız kadarıyla Java'da aynı isimli iki metodu birbirinden ayıran parametre listesidir. Java'da yöntem aşırı yüklemesinin farklı yolları , aşağıdaki yollardan biriyle parametre listesi değiştirilerek elde edilebilir:
- Parametre sayısı
- Parametrelerin veri türü
- Veri türü parametre dizisi
Parametre Sayısı
Adından da anlaşılacağı gibi, aşırı yüklenmiş yöntemlerde, hangi yöntemin yürütüleceğine karar verecek olan, yöntem çağrı deyimini görerek farklı sayıda parametre olacaktır. Aşağıda, parametre sayısının değiştiği Java'daki aşırı yükleme yöntemi verilmiştir.
Yöntem1: ekle(int, int)
Yöntem2: ekle(int, int, int)
Yöntem çağırma ifadesi add(20,30) yöntem1'i yürütür ve Yöntem çağırma ifadesi add(10,20,30) yöntem2'yi yürütür.
Parametrelerin Veri Türü
Java'da bu tür yöntem aşırı yüklemesinde , bir sınıfın iki Java yöntemi aynı ada sahiptir ve parametre sayısı aynı veya farklı olabilir, ancak parametrelerin veri türü farklı olacaktır.
Yöntem1: ekle(int, int)
Yöntem2: ekle(int, kayan nokta)
Yöntem3: ekle(yüzdür, yüzdür)
Yukarıdaki yöntemlerde yöntem adı aynıdır, ancak parametrelerin veri türü farklıdır. Bu nedenle, yöntem çağırma ifadesi add(2, 5.5), yöntem2'yi yürütür. Benzer şekilde, add(7.5, 10.25) method3'ü çalıştıracaktır.
Veri Türü Parametrelerinin Sırası
Java'da bu tür bir yöntem aşırı yüklemesinde , hem yöntem adı hem de parametre sayısı aynıdır, ancak fark, bu parametrelerin veri türlerinin dizisinde yatmaktadır. Aşağıda aşırı yüklenmiş yöntemlere bir örnek verilmiştir:
Yöntem1: ekle(int, kayan nokta)

Yöntem2: ekle(kayan, int)
Burada, add(100, 75.5) ifadesinin çağrılması, yürütülecek yöntem1'i çağıracak ve add(55.25, 150) yöntem2'yi yürütecektir.
Bu nedenle, hangi aşırı yüklenmiş yöntemin yürütüleceğine karar veren, çağıran ifadedeki parametrelerdir.
Okuyun: Java'da Yöntem Aşırı Yüklemesi
Java'da Yöntem Aşırı Yüklemesine Neden İhtiyaç Duyarız?
Programcı bazı eylemleri gerçekleştirmek için Java'da bir yöntem oluşturduysa, ancak daha sonra gereksinimin bir parçası olarak programcı aynı yöntemin farklı parametreler üzerinde hareket etmesini istiyorsa, kodlayıcı Java'da yöntem aşırı yükleme özelliğini kullanabilir . Bu, programcının aynı adla benzer işlevleri gerçekleştirme yöntemlerini oluşturmasına olanak tanır, böylece adları daha sonra hatırlamak zorunda kalmazlar.
Java'da yöntem aşırı yüklemesi gerçekleştirmenin avantajlarını öğrenelim.
Java'da Yöntem Aşırı Yüklemesini Gerçekleştirmenin Avantajları
Java'da yöntem aşırı yüklemesinin avantajlarından bazıları şunlardır :
- Yazılan kodun okunabilirliğini artırır.
- Yazılan koda temizlik katar.
- Farklı veriler ileterek farklı nesneler oluşturabilmemiz için yapıcılarda da kullanılabilir.
- Programcılara benzer adlarla farklı yöntemleri çağırma esnekliği verir.
- Aşırı yüklenmiş yöntemlerin farklı dönüş türleri olabilir.
Mutlaka Okuyun: Java'da Kariyer
Java'da Yöntem Aşırı Yükleme Kuralları
- İlk kural, yöntem imzasını değiştirmektir. Yöntem imzası, argümanların sayısını, parametre dizisini ve parametrelerin veri tipini ifade eder.
- Eğer sadece metodun dönüş tipini metot ismi ve argümanları aynı tutarak değiştirirsek, bu metot aşırı yüklemesi olmayacak fakat bir derleme hatasına yol açacaktır.
Java'da Yöntem Aşırı Yüklemesi Hakkında Önemli Noktalar
- Java ile yazılan hiçbir kodun aynı ada sahip metotları olamaz. Java'da aynı isimde 2 method oluşturursak derleme hatası verir.
- Bu, yöntem aşırı yüklemesi yoluyla elde edilebilir. Yöntem aşırı yüklemesi, programcıların aynı ada ancak farklı parametre listelerine sahip iki veya ikiden fazla yöntem yazmasına olanak tanır.
- Java'da yöntem aşırı yüklemesi, yapıcı aşırı yüklemesine benzer. Tek fark, sınıfta tanımlanan yöntemler için yöntem aşırı yüklemesi meydana gelirken, yapıcı aşırı yüklemesi, sınıfın yapıcı yöntemleri içindir.
- Java'da yöntem aşırı yüklemesinde, aşırı yüklenmiş yöntemlerin farklı bir parametre listesi vardır. Yöntemin dönüş türü ile ilgisi yoktur. Örnek olarak; iki yöntem aynı ada ve aynı parametre listesine, ancak farklı dönüş türlerine sahipse, bu Java'da yöntem aşırı yüklemesi değil, geçersiz bir durumdur.
Yöntem 1 : int Add (float, float)
Yöntem 2 : float Add (float, float)
Her iki Add() yöntemi de aynı ada ve aynı parametre listesine sahip olduğundan, bu geçersiz bir yöntem aşırı yükleme durumudur.
Java'da Yöntem Aşırı Yüklemesini açıklayan kod aşağıdadır:
Sınıf toplamı{
özel int a;
özel int b;
özel int c;
özel int d;
int genel add(int a, int b){
int c;
c=a+b;
dönüş c;
}
int public add(int a, float b){
int c;
c=a+b;
dönüş c;
}
int public add(float a, float b){
int c;
c=a+b;
dönüş c;
}
int public add(float a, int b, int c){
int d;
d=a+b+c;
dönüş d;
}
}
Genel statik geçersiz ana (String[]args)
{
// ana metodda sınıfın nesnesi oluşturuluyor
toplam nesne1 = yeni toplam();
toplam1=obj1.add(10,20);
toplam2=nesne1.add(10,55.5);
toplam3=obj1.add(110.5,25.5);

toplam4=obj1.add(10,20,30);
}
Ayrıca Okuyun: Java'da Model Programları
Çözüm
Bu makalede, Java'da Yöntem Aşırı Yüklemesi , türleri, kuralları ve avantajları açıklanarak ayrıntılı olarak tartışılmıştır. Konu örnekler yardımıyla derinlemesine anlatılmıştır. Java'da aşırı yükleme konusunda herhangi bir şüpheniz varsa yorumlarda bize bildirin.
Java, full-stack yazılım geliştirme hakkında daha fazla bilgi edinmek istiyorsanız, upGrad & IIIT-B'nin çalışan profesyoneller için tasarlanmış ve 500+ saatlik zorlu eğitim, 9+ proje sunan Full-stack Yazılım Geliştirme PG Diplomasına göz atın , ve ödevler, IIIT-B Mezunları statüsü, pratik uygulamalı bitirme projeleri ve en iyi firmalarla iş yardımı.