Metod Aşırı Yüklemesi Nedir?
Yöntem aşırı yükleme, iki veya daha fazla yöntemin aynı adı
paylaştığı ancak farklı parametrelere sahip olduğu nesne yönelimli programlama
dillerindeki bir özelliktir. Spesifik olarak, parametrelerin sayısı, veri tipi
ve / veya sırası farklıdır. Kod derlendiğinde, nasıl çağrıldığına bağlı olarak
doğru yöntem otomatik olarak seçilir. Yöntemler, uygun faizli konut kredisi bazı
programlama dillerindeki işlevler olarak da bilinir, bu nedenle yöntem aşırı
yüklenmesi bazen fonksiyon aşırı yüklenmesi olarak adlandırılır .
Yöntemin aşırı yüklenmesinin basit bir örneği, bir karenin
alanını hesaplayan bir yöntem olabilir. GetArea (Kare s) olarak tanımlanabilir.
Bu yöntem, getArea (Circle c) yöntemini ekleyerek dairenin alanını ek olarak
hesaplamak için aşırı yüklenebilir.
Metodun aşırı yüklenmesi için temel gereksinim, yöntemlerin
aynı adı paylaşmasıdır. Yöntem imzaları - yöntem adı, parametre sayısı ve
parametre veri türleri - aksi halde benzersiz olmalıdır. Bu şekilde, derleyici
hangi yöntemin yürütüleceğini belirleyebilir.
Yapıcılar, nesneleri başlatmak için kullanılan yöntemler
genellikle aşırı yüklenir. Bu, varsayılan olmayan değerlerle bir nesneyi
başlatmak için yapılır. Örneğin, iki alanı olan bir çalışan nesnesi (adı ve
doğum tarihi veya dob) aşağıdaki aşırı yüklenicilere sahip olabilir: Çalışan
(), Çalışanlar (ad) ve Çalışanlar (ad, dob). İlk kurucu boş isim ve dob
alanlarına sahip bir çalışan nesnesi oluşturur. İkincisi, ad alanını ayarlar,
ancak dob alanını boş bırakır ve üçüncü, hem isim hem de dob alanlarını
tanımlar.
Yöntem aşırı yükleme genellikle birden fazla yöntemin
mantıklı bir şekilde tek bir yöntem olarak görünmesi için yapılır. GetArea ()
örneğinde, fiziksel olarak iki yöntem bulunurken, arayan kişiye tek bir
mantıksal getArea () yöntemi sunulur. Bu şekilde getArea (), diğer şekillerde
(üçgenler, yamuklar, vb.) Çalışmaya devam ederken, tek bir yöntem olarak
kendini mantıksal olarak sunabilir.
Geriye dönük uyumluluğu korumak için yöntemler de aşırı
yüklenmiştir. Karmaşık bir hesaplama yapan bir yöntem, isteğe bağlı olarak aynı
en kolay kredi kartı veren banka hesaplamayı hafif bir değişiklikle gerçekleştirmek için yeni
bir gereksinim verilebilir. Hesaplamanın nasıl yapılacağını belirleyen yönteme
yeni bir parametre eklenir: eski yol veya yeni yol.
Yöntemin çağrıldığı ve yeni parametrenin eklendiği tüm
durumları bulmaktan kaçınmak için, yöntem aşırı yüklenebilir. Yeni yöntem eski
imzaya sahip olacak ve mevcut kodla çağrılacak. Herhangi bir mantığı
içermeyecek ve sadece değiştirilmiş yöntemi arayacak ve yeni parametre için
“eski yol” varsayılanını geçecektir. Yeni kod, değiştirilmiş yöntemi çağırır ve
yeni parametreyi uygun değer, eski yol veya yeni yolla iletir.
Metodu aşırı yükleme, aynı mantıksal yöntemin, pratikte,
birden çok şekilde kullanılabileceği bir tür polimorfizmdir. Yöntem aşırı
yükleme, yöntem geçersiz kılma ile aynı değildir . Yöntemin geçersiz kılınması,
bir üst sınıftaki bir yöntemin tanımının bir alt sınıf tarafından
değiştirildiği yerdir. Bu durumda, her iki yöntem de aynı imzana sahip
olacaktır.
Yorumlar
Yorum Gönder