polymorphism l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
EM-406 Java PowerPoint Presentation
Download Presentation
EM-406 Java

Loading in 2 Seconds...

play fullscreen
1 / 8
opal

EM-406 Java - PowerPoint PPT Presentation

159 Views
Download Presentation
EM-406 Java
An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Polymorphism EM-406 Java

  2. Motivasyon • Bir işlem birden fazla tip üzerinde çalışabilir • Metot temel tip arayüzünü kullanır • İşlem çalışan metot tarafından yapılır

  3. Upcasting • Bir objeye temel class larından bir objeymiş gibi davranmak • Aynı class tan türeyen objelerin her biri için ayrı metot yazmak gerekmeyebilir

  4. Metot Bağlama • Bir metot çağrıldığında hangi metot çalışır • Erken: Derleme esnasında • Geç/Dinamik/Runtime : Çalışma esnasında • Objeler hangi tipten olduklarını bildirirler • Java’da static ve/veya final hariç geç bağlama

  5. Metot Bağlama • Shape sh = new Circle(); • sh.draw(); • Shape üzerindeki draw değil Circle üzerindeki draw çalışır • Belli bir noktada draw metoduna bağlı bir kod olabilir • Sisteme yeni şekiller eklenmesi bozulma yaratmaz

  6. Private Override • Temel classtaki private bir metot alt classta tekrar tanımlanmaya çalışılırsa (override) nasıl bir davranış olur?

  7. abstract • Temel classta anlamsız olan metotlar • shape.draw() ??? • Gövdesi olmayan metotlar abstract olur • abstract metodu olan classlar abstract olur • abstract classtan obje üretilmez

  8. Constructor • Constructor içinden polymorphic metot çağrılırsa ne olur? • Obje için hafıza alanı hazırlanır • Temel class constructorları çağrılır • Bu aşamada bir tekrar tanımlanmış metot çağrılırsa boş döner. • Tanımlama sırasına göre değişkenler başlatılır. • Türemiş class constructor u çağrılır.