Java Eğitimleri

Java ANA SAYFA Java'ya Giriş Java Başlarken Java Sözdizimi Java Yorumları Java Değişkenleri Java Veri Türleri Java Tipi Döküm Java Operatörleri Java Dizeleri Java Matematiği Java Booleanları Java Eğer... Başka Java Anahtarı Java while Döngüsü Döngü için Java Java Ara/Devam Java Dizileri

Java Yöntemleri

Java Yöntemleri Java Yöntemi Parametreleri Java Yöntemi Aşırı Yüklemesi Java Kapsamı Java Özyineleme

Java Sınıfları

Java OOP'si Java Sınıfları/Nesneleri Java Sınıfı Nitelikleri Java Sınıfı Yöntemleri Java Oluşturucuları Java Değiştiriciler Java Kapsülleme Java Paketleri / API Java Kalıtımı Java Polimorfizmi Java İç Sınıfları Java Soyutlama Java Arayüzü Java Numaraları Java Kullanıcı Girişi Java Tarihi Java Dizi Listesi Java Bağlantılı Listesi Java Hash Haritası Java HashSeti Java Yineleyici Java Sarıcı Sınıfları Java İstisnaları Java Normal İfadesi Java Konuları Java Lambda

Java Dosya İşleme

Java Dosyaları Java Dosyaları Oluşturma/Yazma Java Okuma Dosyaları Java Dosyaları Sil

Java Nasıl Yapılır

İki Sayı Ekle

Java Referansı

Java Anahtar Kelimeleri Java Dize Yöntemleri Java Matematik Yöntemleri

Java Örnekleri

Java Örnekleri Java Derleyici Java Alıştırmaları Java Testi Java Sertifikası


Java Polimorfizmi


Java Polimorfizmi

Polimorfizm "birçok form" anlamına gelir ve kalıtım yoluyla birbiriyle ilişkili birçok sınıfımız olduğunda ortaya çıkar.

Bir önceki bölümde belirttiğimiz gibi; Kalıtım , başka bir sınıftan öznitelikleri ve yöntemleri miras almamızı sağlar. Polimorfizm , farklı görevleri gerçekleştirmek için bu yöntemleri kullanır. Bu, tek bir eylemi farklı şekillerde gerçekleştirmemizi sağlar.

Örneğin, adında Animalbir yöntemi olan bir üst sınıf düşünün animalSound(). Hayvanların alt sınıfları Domuzlar, Kediler, Köpekler, Kuşlar olabilir - Ayrıca kendi hayvan sesi uygulamalarına da sahiptirler (domuz oinks ve kedi miyavları, vb.):

Örnek

class Animal {
  public void animalSound() {
    System.out.println("The animal makes a sound");
  }
}

class Pig extends Animal {
  public void animalSound() {
    System.out.println("The pig says: wee wee");
  }
}

class Dog extends Animal {
  public void animalSound() {
    System.out.println("The dog says: bow wow");
  }
}

Bir sınıftan miras almak için anahtar kelimeyi kullandığımızı Miras bölümünden hatırlayın .extends

Şimdi Pigand Dognesneleri oluşturabilir ve animalSound()her ikisinde de yöntemi çağırabiliriz:

Örnek

class Animal {
  public void animalSound() {
    System.out.println("The animal makes a sound");
  }
}

class Pig extends Animal {
  public void animalSound() {
    System.out.println("The pig says: wee wee");
  }
}

class Dog extends Animal {
  public void animalSound() {
    System.out.println("The dog says: bow wow");
  }
}

class Main {
  public static void main(String[] args) {
    Animal myAnimal = new Animal();  // Create a Animal object
    Animal myPig = new Pig();  // Create a Pig object
    Animal myDog = new Dog();  // Create a Dog object
    myAnimal.animalSound();
    myPig.animalSound();
    myDog.animalSound();
  }
}

"Kalıtım" ve "Polimorfizm" Neden ve Ne Zaman Kullanılır?

- Kodun yeniden kullanılabilirliği için yararlıdır: yeni bir sınıf oluşturduğunuzda mevcut bir sınıfın niteliklerini ve yöntemlerini yeniden kullanın.