Benutzer-Werkzeuge

Webseiten-Werkzeuge


klassen2:abstrakt:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
klassen2:abstrakt:start [2020/04/30 09:35] – [Abstrakte Klassen] Martin Pabstklassen2:abstrakt:start [2021/12/29 11:29] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
 ====== Abstrakte Klassen ====== ====== Abstrakte Klassen ======
 +
 +{{ youtube>Aekx2HXnEVg?large }}
 + \\ 
 + \\ 
 Oft ist es nicht sinnvoll, Objekte einer Oberklasse zu instanzieren, weil sie "abstrakt" ist, d.h. noch nicht über alle Attribute/Methoden verfügt. Wir sehen uns dazu wieder ein einfaches Beispiel an: Die Klasse ''Tier'' besitzt ein Attribut ''art''. Von ihr leiten wir die Unterklassen ''Hund'' und ''Katze'' ab: Oft ist es nicht sinnvoll, Objekte einer Oberklasse zu instanzieren, weil sie "abstrakt" ist, d.h. noch nicht über alle Attribute/Methoden verfügt. Wir sehen uns dazu wieder ein einfaches Beispiel an: Die Klasse ''Tier'' besitzt ein Attribut ''art''. Von ihr leiten wir die Unterklassen ''Hund'' und ''Katze'' ab:
  
 <HTML> <HTML>
  
-<div class="java-online" style="height: 400px; width: 100%" data-java-online="{}">+<div class="java-online" style="height: 400px; width: 100%" data-java-online="'id': 'Abstrakt1', 'withBottomPanel': true}">
  
 <script type="text/plain" title="Main.java"> <script type="text/plain" title="Main.java">
Zeile 64: Zeile 68:
 <HTML> <HTML>
  
-<div class="java-online" style="height: 400px; width: 100%" data-java-online="{}">+<div class="java-online" style="height: 400px; width: 100%" data-java-online="{'id': 'Abstrakt2', 'withBottomPanel': true}">
  
 <script type="text/plain" title="Main.java"> <script type="text/plain" title="Main.java">
Zeile 138: Zeile 142:
 <WRAP center round info 60%> <WRAP center round info 60%>
 Eine Klasse kann nur dann abstrakte Methoden enthalten, wenn sie selbst mit dem Schlüsselwort ''abstract'' gekennzeichnet ist. Das sorgt dafür, dass keine Objekte dieser Klasse instanziert werden können (was nicht geht, weil die abstrakten Methoden ja keinen Programmtext besitzen, der ausgeführt werden könnte). Eine Klasse kann nur dann abstrakte Methoden enthalten, wenn sie selbst mit dem Schlüsselwort ''abstract'' gekennzeichnet ist. Das sorgt dafür, dass keine Objekte dieser Klasse instanziert werden können (was nicht geht, weil die abstrakten Methoden ja keinen Programmtext besitzen, der ausgeführt werden könnte).
 +</WRAP>
 +
 +===== Klassendiagramm =====
 +<WRAP center round info 60%>
 +{{ :klassen2:abstrakt:pasted:20210424-215332.png?200}}
 +Der UML-Standard sieht vor, dass die Bezeichner abstrakter Klassen und Methoden **in Schrägschrift** gesetzt werden. Vor den Klassenbezeichner kann wahlweise zusätzlich das Präfix "<<abstract>>" geschrieben werden.
 </WRAP> </WRAP>
  
klassen2/abstrakt/start.1588232106.txt.gz · Zuletzt geändert: 2021/12/29 11:29 (Externe Bearbeitung)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki