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
faecher:informatik:oberstufe:java:objektorientierung:uml:start [06.05.2021 12:08] – [Getter/Setter] sbelfaecher:informatik:oberstufe:java:objektorientierung:uml:start [07.10.2023 11:17] (aktuell) – [Getter/Setter] Marco Kuemmel
Zeile 4: Zeile 4:
 UML ist eine Abkürzung für "Unified Modeling Language". UML ist eine Abkürzung für "Unified Modeling Language".
  
-Klassen bestehen drei Teilen:+Klassen bestehen aus drei Teilen:
    
   * Klassenname   * Klassenname
Zeile 30: Zeile 30:
  
 Den Attributen können verschiedene Zeichen vorangestellt sein: ''-'', ''+'', ''C'' und (nicht im Beispiel) ''#''. Den Attributen können verschiedene Zeichen vorangestellt sein: ''-'', ''+'', ''C'' und (nicht im Beispiel) ''#''.
 +
 +Der Konstruktor wird mit einem ''C'' markiert.
  
 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**. 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.+Solche "privaten" 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. Attribute und Methoden, denen ein Pluszeichen ''+'' vorangestellt ist, sind als public (öffentlich) deklariert, auf diese kann man also von außen zugreifen.
Zeile 46: Zeile 48:
 <code> <code>
 myDog = new Hund(5,36,"Emil") myDog = new Hund(5,36,"Emil")
-myDog->geName() // "Emil" +myDog.getName() // "Emil" 
-myDog->setName("Higgs"+myDog.setName("Higgs"
-myDog->getName() // "Higgs" +myDog.getName() // "Higgs" 
-myDog->name // FEHLER +myDog.name // FEHLER 
-myDog->name = "Higgs" // FEHLER+myDog.name = "Higgs" // FEHLER
  
 </code> </code>
Zeile 56: Zeile 58:
 ===== Klassenvariablen ===== ===== 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.+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. 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.
Zeile 64: Zeile 66:
 In eine UML Diagramm werden Klassenvariablen mit Hilfe eines Unterstrichs gekennzeichnet: 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 |}}+{{ :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. 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