Heim  >  Artikel  >  Java  >  Der Unterschied zwischen Überladung, Vererbung, Überschreibung und Polymorphismus in Java

Der Unterschied zwischen Überladung, Vererbung, Überschreibung und Polymorphismus in Java

高洛峰
高洛峰Original
2017-01-19 13:58:031315Durchsuche

Der Unterschied zwischen Überladung, Vererbung, Überschreibung und Polymorphismus:

1) Vererbung liegt vor, wenn eine Unterklasse Mitglieder der übergeordneten Klasse erhält.
2) Überschreiben ist eine Methode zum erneuten Implementieren der übergeordneten Klasse nach der Vererbung.
3) Überladen ist eine Reihe von Methoden mit unterschiedlichen Parametern und demselben Namen in einer Klasse.
4) Polymorphismus dient dazu, eine große Anzahl von Überladungen in der übergeordneten Klasse zu vermeiden, die dazu führen, dass der Code aufgebläht und schwer zu warten ist.

Eine interessante Aussage, die ich im Internet gesehen habe, ist: Vererbung ist eine Methode für Unterklassen, um übergeordnete Klassen zu verwenden, während Polymorphismus eine Methode für übergeordnete Klassen ist, um Unterklassen zu verwenden.

Das folgende Beispiel enthält diese vier Implementierungen:

class Triangle erweitert Shape {

public int getSides() {
return 3;
}
}

Klasse Rechteck erweitert Shape {
public int getSides(int i) {
return i;
}
}

öffentliche Klasse Shape {
public boolean isSharp(){
return true;
}

public int getSides(){
return 0 ;
}
public int getSides(Triangle tri) {
return 3 ;
}
public int getSides(Rectangle rec){
return 4 ;
}

public static void main(String[] args) {
Dreieck tri = neues Dreieck();
System.out.println(“Dreieck ist eine Art scharfes? ” + tri.isSharp());
Form form = neues Dreieck();
System. out.println(“Meine Form hat ” + shape.getSides() + ” Seiten.“);
}
}

Rot ist überladen, Grün ist überschreibend, Blau ist Vererbung, Rosa ist Polymorphismus

Beachten Sie, dass die Methoden der Triangle-Klasse überschrieben werden, während die Methoden der Rechteck-Klasse überladen sind.
Wenn Sie die roten und rosafarbenen Teile vergleichen, können Sie die Vorteile des Polymorphismus gegenüber der Überladung erkennen: Wenn Überladung verwendet wird, muss für jede Unterklasse eine Methode zum Erhalten der Kantenanzahl in der übergeordneten Klasse überladen werden Die Klasse bietet nur eine Schnittstelle zum Ermitteln der Anzahl der Kanten und der Art und Weise, wie diese ermittelt wird. Jede untergeordnete Klasse kann sie implementieren (umschreiben).

Weitere Artikel zu den Unterschieden zwischen Überladung, Vererbung, Umschreiben und Polymorphismus in Java finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
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