faecher:informatik:oberstufe:java:objektorientierung:uml:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Nächste ÜberarbeitungBeide Seiten, nächste Überarbeitung
faecher:informatik:oberstufe:java:objektorientierung:uml:start [06.05.2021 11:59] sbelfaecher:informatik:oberstufe:java:objektorientierung:uml:start [06.05.2021 12:09] sbel
Zeile 54: Zeile 54:
 </code> </code>
  
 +===== Klassenvariablen =====
  
 +Alle bisherigen Attribute waren Instanzvariablen. Jede Instanz der Hunde-Klasse speichert die Werte ihrer Instanzvariablen  in einem eigenen Speicherbereich, zwei Instanzen der Hunde-KLasse können also nicht gegenseitig auf die Werte ihrer Instanzvariablen zugreifen.
 +
 +Wenn wir nun beispielsweise die Zahl der erzeugten Hunde-Objekte zählen wollen, haben wir ein Problem: Wir können zwar Flöhe auf jedem Hund zählen, haben aber keinen gemeinsamen Zähler für alle Objekte, den jede Instanz lesen und schreiben kann.
 +
 +Wir benötigen also eine Integer-Variable, auf die alle Hunde-Instanzen zugreifen können. Eine solche Variable heißt  **Klassenvariable**, in Java wird sie mittels des Schlüsselworts ''static'' definiert.
 +
 +In eine UML Diagramm werden Klassenvariablen mit Hilfe eines Unterstrichs gekennzeichnet:
 +
 +{{ :faecher:informatik:oberstufe:java:objektorientierung:uml:diagram_2021-05-06_12-08-49.png  }}  
 +
 +
 +
 +Los! Lass uns das Klassendiagramm von oben um eine Klassenvariable, mit der wir die Anzahl der erzeugten Hunde zählen können ergänzen.
  • faecher/informatik/oberstufe/java/objektorientierung/uml/start.txt
  • Zuletzt geändert: 07.10.2023 11:17
  • von Marco Kuemmel