Grundlegendes Erlernen von Java – eine kurze Zusammenfassung der Vererbung
Oct 08, 2016 pm 01:43 PMJava Basic Learning – eine kurze Zusammenfassung der Vererbung
Codereferenz: Java Basic Learning Notes-Polymorphismus
Warum sollte Vererbung eingeführt werden?
Erstellen wir eine Medienbibliothek, die CDs und DVDs speichern kann. Wenn CD und DVD in zwei unabh?ngige Klassen unterteilt werden, müssen Sie bei der Verwaltung dieser Medienbibliothek eine separate Funktion zum Hinzufügen von CDs und eine separate Funktion zum Hinzufügen von DVDs erstellen. Wenn Sie dieser Medienbibliothek weitere Medienklassen hinzufügen m?chten, Es muss eine weitere Zusatzfunktion geschaffen werden. Wir sagen, dass ein solcher Code nicht skalierbar ist. Darüber hinaus weisen CDs und DVDs viele ?hnlichkeiten auf, darunter Titel, Spielzeit, Kommentare usw. Wir sagen, dass ein solches Programm viele Code-Duplikate aufweist und dass Code-Duplizierung ein Ausdruck von schlechtem Code ist. Wir k?nnen also eine übergeordnete Klasse von ihnen erstellen, dieselben Mitgliedsvariablen zur übergeordneten Klasse hinzufügen und alle k?nnen diese Variablen erben. Beim Hinzufügen zur Medienbibliothek müssen wir nur eine Funktion erstellen, die ihre übergeordnete Klasse hinzufügt k?nnen ebenfalls hinzugefügt werden.
Was erbt die Unterklasse von der übergeordneten Klasse?
Alles von der übergeordneten Klasse erben, einschlie?lich Mitgliedsvariablen und Mitgliedsfunktionen. M?glicherweise k?nnen Sie jedoch nicht auf alles in der übergeordneten Klasse zugreifen. Sehen Sie sich daher die Zugriffsattribute der von der übergeordneten Klasse geerbten Mitgliedsvariablen und Mitgliedsfunktionen an. Wenn eine Mitgliedsvariable in der übergeordneten Klasse privat ist, kann die Unterklasse nicht direkt darauf zugreifen. Auf private kann jedoch nur von der übergeordneten Klasse selbst zugegriffen werden, sodass wir indirekt auf diese Mitgliedsvariablen in der Unterklasse zugreifen k?nnen, indem wir die ?ffentliche Funktion der übergeordneten Klasse aufrufen.
Darüber hinaus kann eine Unterklasse nicht nur von der übergeordneten Klasse erben, sondern auch über eigene eindeutige Mitgliedsvariablen und Funktionen verfügen, die in ihrer eigenen Klasse geschrieben sind.
Zugriffsattribut
Zugriffsattribut Bedeutung
?ffentlich Offen für alle
privat Nur Sie haben Zugriff
geschützt Nur Sie und Ihre Kinder Die Klasse und andere Klassen im Paket k?nnen auf
zugreifen. Standardm??ig k?nnen nur sie selbst und andere Klassen im Paket auf
super();
in der übergeordneten Klasse Die im Konstruktor der Unterklasse erstellten Mitgliedsvariablen müssen in der Parameterliste des Konstruktors der Unterklasse angegeben werden, und super () wird verwendet, um diese in der übergeordneten Klasse erstellten Mitgliedsvariablen von der übergeordneten Klasse abzurufen. Beispielcode finden Sie im Blogbeitrag zu Polymorphismus. Die Parameter in super(); bestimmen, welcher Konstruktor in der übergeordneten Klasse aufgerufen wird. Die Parameter in super(); Im Standardmodus (wenn im Unterklassenkonstruktor kein super(); vorhanden ist), wird standardm??ig der Konstruktor ohne Parameter in der übergeordneten Klasse aufgerufen. Wenn in der übergeordneten Klasse kein solcher Konstruktor vorhanden ist, Eclipse meldet einen Fehler. überschreiben Wenn es eine Funktion mit demselben Namen in der Unterklasse und der übergeordneten Klasse gibt, überschreibt die Funktion in der Unterklasse die von der übergeordneten Klasse geerbte Funktion , dann wird die Funktion der übergeordneten Klasse ausgeblendet und funktioniert nicht. Wenn Sie jedoch die Funktion mit demselben Namen in der übergeordneten Klasse in der Unterklasse aufrufen m?chten, sollten Sie sie als super.function name(); schreiben.<br/>

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)