Samouczki Java

Jawa DOM Wprowadzenie do Javy Rozpocznij Java Składnia Javy Komentarze Java Zmienne Javy Typy danych Java Rzutowanie typu Java Operatory Java Ciągi Java Matematyka Java Java logiczne Java, jeśli...inne Przełącznik Java Java podczas pętli Java dla pętli Przerwa/Kontynuacja w Javie Tablice Java

Metody Java

Metody Java Parametry metody Java Przeciążanie metody Java Zakres Java Rekurencja Java

Klasy Java

Java OOP Klasy/obiekty Java Atrybuty klas Java Metody klas Java Konstruktory Javy Modyfikatory Java Enkapsulacja Javy Pakiety Java / API Dziedziczenie Javy Polimorfizm Javy Klasy wewnętrzne Java Abstrakcja Java Interfejs Java Wyliczenia Java Wejście użytkownika Java Data Java Lista tablic Java Połączona lista Java Java HashMap Zestaw skrótów Java Iterator Javy Klasy opakowujące Java Wyjątki Java Java RegEx Wątki Java Jawa Lambda

Obsługa plików Java

Pliki Java Tworzenie/zapis plików Java Odczytywanie plików Java Usuń pliki Java

Jak to zrobić

Dodaj dwie liczby

Odniesienie do Javy

Słowa kluczowe Java Metody ciągów Java Metody matematyczne w języku Java

Przykłady Javy

Przykłady Javy Kompilator Javy Ćwiczenia Java Quiz Java Certyfikat Java


Polimorfizm Javy


Polimorfizm Javy

Polimorfizm oznacza „wiele form” i występuje, gdy mamy wiele klas, które są ze sobą powiązane dziedziczeniem.

Tak jak opisaliśmy w poprzednim rozdziale; Dziedziczenie pozwala nam dziedziczyć atrybuty i metody z innej klasy. Polimorfizm wykorzystuje te metody do wykonywania różnych zadań. To pozwala nam wykonać jedną akcję na różne sposoby.

Pomyśl na przykład o nadklasie o nazwie Animal, która ma metodę o nazwie animalSound(). Podklasami zwierząt mogą być Świnie, Koty, Psy, Ptaki. Mają też własną implementację odgłosów zwierząt (świnia mruczy, kot miauczy itp.):

Przykład

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");
  }
}

Pamiętaj z rozdziału Dziedziczenie , że używamy extendssłowa kluczowego do dziedziczenia z klasy.

Teraz możemy tworzyć obiekty Pigi Dogwywołać animalSound()metodę na obu z nich:

Przykład

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();
  }
}

Dlaczego i kiedy używać „dziedziczenia” i „polimorfizmu”?

- Przydaje się do ponownego wykorzystania kodu: ponowne wykorzystanie atrybutów i metod istniejącej klasy podczas tworzenia nowej klasy.