Kayıt Ol

Giriş

Şifremi Kaybettim

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

soru ekleme

Soru sormak için giriş yapmalısınız.

Giriş

Kayıt Ol

.........

Polymorphism Nedir?

Polymorphism Nedir?

Bir sınıf sonradan yazılmış sınıfları çağıracak şekilde düzenlenmişse bu özelliğe polymorphism denilir.  Polymorphism için üç şartın mutlaka sağlanması gerekir.

  1. Türeme
  2. Override
  3. Upcast

Upcast çoğu zaman polimorfik sınıfın constructur’una türemiş sınıfın nesnesi gönderildiğinde gerçekleşir.

Turemis tu=new Turemis();

Taban tau=tu;//upcast

upcast yardımıyla elde edilen tau nesnesi ile override edilen fonk (int i) fonksiyonu çağrıldığında her zaman türemiş sınıftaki fonksiyon çağrılır. Buna göre amaç sadece polymorphism ise taban sınıftaki fonk(int i) fonksiyonunun gövdesini yazmaya gerçekte gerek yoktur. Bunu bize SOYUT sınıflar veya INTERFACE sağlar.

public abstract class TabanS {

public abstract int fonk(int j);

}

Soyut sınıfların veya interface’lerin tek görevi polymorphism değildir.

Soyut bir sınıftan türeme yapan bir sınıf, o sınıfın abstract bildirimi yapılan fonksiyonunu override etmek zorundadır. Bu özellik polymorphism’e yardımcı olur.

NOT: Polymorphism için taban sınıfın abstract olması zorunlu değildir, ama olsa iyi olur!!

 

Hakkında Zeynep ŞİT

Namık Kemal Üniversitesi

Leave a reply

*