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 Ü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:08] – [Getter/Setter] 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-07-44.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