Heim > Java > JavaErste Schritte > Was sind die notwendigen Bedingungen für die Existenz von Polymorphismus in Java?

Was sind die notwendigen Bedingungen für die Existenz von Polymorphismus in Java?

王林
Freigeben: 2020-07-13 16:26:55
nach vorne
3350 Leute haben es durchsucht

Was sind die notwendigen Bedingungen für die Existenz von Polymorphismus in Java?

Drei notwendige Bedingungen für die Existenz von Polymorphismus:

(Empfohlenes Lernen: Java-Einführungs-Tutorial)

  • Erben

  • Überschreiben

  • Die übergeordnete Klassenreferenz verweist auf das untergeordnete Klassenobjekt

Wenn Sie eine Methode mit Polymorphismus aufrufen, prüfen Sie zunächst, ob die Methode in der übergeordneten Klasse vorhanden ist. Wenn dies nicht der Fall ist, rufen Sie die gleichnamige Methode in der Unterklasse auf.

Vorteile des Polymorphismus:

ermöglicht eine gute Erweiterung des Programms und kann universell mit Objekten aller Klassen umgehen.

(Video-Tutorial: Java-Video-Tutorial)

Testcode:

public class Test {
    public static void main(String[] args) {
      show(new Cat());  // 以 Cat 对象调用 show 方法
      show(new Dog());  // 以 Dog 对象调用 show 方法
                
      Animal a = new Cat();  // 向上转型  
      a.eat();               // 调用的是 Cat 的 eat
      Cat c = (Cat)a;        // 向下转型  
      c.work();        // 调用的是 Cat 的 work
  }  
            
    public static void show(Animal a)  {
      a.eat();  
        // 类型判断
        if (a instanceof Cat)  {  // 猫做的事情 
            Cat c = (Cat)a;  
            c.work();  
        } else if (a instanceof Dog) { // 狗做的事情 
            Dog c = (Dog)a;  
            c.work();  
        }  
    }  }
 abstract class Animal {  
    abstract void eat();  }  
  class Cat extends Animal {  
    public void eat() {  
        System.out.println("吃鱼");  
    }  
    public void work() {  
        System.out.println("抓老鼠");  
    }  }  
  class Dog extends Animal {  
    public void eat() {  
        System.out.println("吃骨头");  
    }  
    public void work() {  
        System.out.println("看家");  
    }  }
Nach dem Login kopieren

Ausgabeergebnis:

吃鱼
抓老鼠
吃骨头
看家
吃鱼
抓老鼠
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas sind die notwendigen Bedingungen für die Existenz von Polymorphismus in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage