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:44] sbelfaecher:informatik:oberstufe:java:objektorientierung:uml:start [06.05.2021 11:59] sbel
Zeile 16: Zeile 16:
  
 In einem UML Klassendiagramm werden die drei Bestandteile durch waagerechte Striche getrennt. Für das Hunde-Beispiel sieht das Klassendiagramm so aus:  In einem UML Klassendiagramm werden die drei Bestandteile durch waagerechte Striche getrennt. Für das Hunde-Beispiel sieht das Klassendiagramm so aus: 
 +
 +
  
  
 {{ :faecher:informatik:oberstufe:java:objektorientierung:uml:uml01.png |}} {{ :faecher:informatik:oberstufe:java:objektorientierung:uml:uml01.png |}}
 +
 +
 +  * Im oberen Feld steht der Klassenname (Hund).
 +  * Darunter folgen die Klassen-Attribute. Den Datentyp der Attribute schreibt man durch einen Doppelpunkt getrennt hinter den jeweiligen Attributs-Namen.
 +  * Die Methoden werden mit ihrer Parameterliste und ihrem Rückgabewert im unteren Feld des UML Diagramms angegeben. Der Datentyp des Rückgabewerts einer Methode steht dabei hinter dem Doppelpunkt.
 +
 +===== Vorzeichen? =====
 +
 +Den Attributen können verschiedene Zeichen vorangestellt sein: ''-'', ''+'', ''C'' und (nicht im Beispiel) ''#''.
 +
 +Instanz-Variablen werden für gewöhnlich, um sie gegen Manipulation zu schützen, als "von außen nicht sichtbar", also als "privat" deklariert. Dieses Vorgehen heißt **Kapselung**.
 +
 +Solche "preivaten" Attribute und Methoden werden mit einem Minuszeichen ''-'' gekennzeichnet.
 +
 +Attribute und Methoden, denen ein Pluszeichen ''+'' vorangestellt ist, sind als public (öffentlich) deklariert, auf diese kann man also von außen zugreifen.
 +
 +Darüber hinaus gibt es Attribute und Methoden, die als protected definiert werden können, diese werden im UML Diagramm durch eine vorangestellte Raute ''#'' markiert. Als protected deklarierte Attribute und Methoden sind nur innerhalb der Klasse selbst und allen Unterklassen sichtbar..
 +
 +===== Getter/Setter =====
 +
 +
 +Neben der Methode "bellen" enthält unsere Klasse vor allem "getter-" und "setter-"Methoden für die Attribute. Diese sind nötig, weil die Attribute als  "private" deklariert wurden, und somit ein direkter Zugriff auf die Werte der Instanzvariablen nicht möglich ist. Um einem Hund nun einen neuen Namen zu geben, würde man ein Objekt der Klasse Hund erzeugen und könnte der Instanzvariablen dann mit der "setter"-Methode für den Namen einen neuen Wert zuweisen. Ebenso funktioniert das Auslesen der Werte der Instanzvariablen mit den "getter"-Methoden:
 +
 +<code>
 +myDog = new Hund(5,36,"Emil")
 +myDog->geName() // "Emil"
 +myDog->setName("Higgs")
 +myDog->getName() // "Higgs"
 +myDog->name // FEHLER
 +myDog->name = "Higgs" // FEHLER
 +
 +</code>
 +
 +
  • faecher/informatik/oberstufe/java/objektorientierung/uml/start.txt
  • Zuletzt geändert: 07.10.2023 11:17
  • von Marco Kuemmel