Beziehungen zwischen Referenztypen in Java (Beziehungen zwischen Referenztypen in Java), Lektion, Seite 722340
https://www.purl.org/stefan_ram/pub/typbeziehungen_java (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Java-Kurs

Obertypen in Java 

Finden von Obertypen in der Dokumentation 

In der Dokumentation findet man Oberschnittstellen  und weitere Obertypen  über der waagerechten Linien am Anfang der Dokumentation eines Referenztyps.

Man unterscheidet zwischen erweiterten Obertypen  und implementierten Obertypen.

Erweiterte Obertypen

Dabei sind die erweiterten Obertypen  als eine treppenartige Auflistung angegeben, die daran erkennbar ist, daß sie mit »java.lang.Object« beginnt und daß jede Zeile immer weiter nach rechts eingerückt ist als die vorige.

Implementierte Obertypen

Eventuelle implementierte Obertypen  findet man manchmal separat unter der Überschrift “All Implemented Interfaces ”.

Alle Obertypen

Diese erweiterten Obertypen und implementierte Obertypen bilden zusammen die Obertypen  des dokumentierten Typs.

Known 

Falls man über der Linie auch noch Abschnitte findet, deren Titel das Wort “Known ” enthalten, so handelt es sich bei diesen Abschnitten nicht  um Obertypen. Man sollte diese Abschnitte ignorieren, wenn man nach Obertypen sucht. Genauso sind auch eventuelle Angaben zu Typparametern  nicht als Angabe von Obertypen zu verstehen.

Eigenschaften von Obertypen 

Jeder Typ ist Obertyp seiner selbst. (Er ist dementsprechend auch immer in der eingerückten Liste der Obertypen  zu finden.)

Echte Obertypen 

Ein Obertyp, der nicht der Typ selbst ist, ist ein echter Obertyp.

Höhe von Typen 

Wir stellen uns auch vor, daß ein echter Obertyp eines Typs, weiter „oben“ ist als jener Typ. So ist es gemeint, wenn später etwa nach einem Typ gesucht wird, „der möglichst weit oben ist“.

Ein echter Obertyp P eines eines echten Obertyps O ist dementsprechen weiter oben als der echte Obertyp O.

Klassen und Schnittstellen

Was ist überhaupt der Unterschied  zwischen Klassen und Schnittstellen? Dies wird erst etwas später  in diesem Kurs deutlich werden! Bis dahin können wir zur Erklärung nur sagen, daß manche Referenztypen als „Klassen“ und manche als „Schnittstellen“ bezeichnet werden und wir zunächst noch nicht wissen müssen, welcher Unterschied zwischen ihnen besteht. Deswegen bezeichnen wir sie bis auf weiteres auch oft beide einfach als „Typen“ oder „Referenztypen“.

Konstruierte Typen

Wenn O ein Obertyp des Typs U ist, dann folgt daraus nicht, daß der konstruierte Typ »G<O>« ein Obertyp von »G<U>« ist! Etwaige Obertypen eines Typ »G<U>« müssen der Dokumentation entnommen werden.

Beispielsweise ist »java.util.List<E>« ein Obertyp von »java.util.ArrayList<E>«, aber »java.util.ArrayList<java.lang.Object>« ist kein  Obertyp von »java.util.ArrayList<java.lang.String>«.

Übungsfragen

?   »java.io.PrintStream«

Welche Obertypen hat der Referenztyp »java.io.PrintStream«?

?   »java.lang.Double«

Der Typ »double« ist ein Obertyp des Typs »int«; ist der Typ »java.lang.Double« ein Obertyp des Typs »java.lang.Integer«?

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram722340 stefan_ram:722340 Beziehungen zwischen Referenztypen in Java Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd722340, slrprddef722340, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/typbeziehungen_java