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

Bu blogdaki popüler yayınlar

Bir Süper Kullanıcı Nedir?

Bir Soket Soğutucu Nedir?

Bir Proxy Listesi Nedir?