kramann.info
© Guido Kramann

Login: Passwort:










Informatik3
1 Vom_struct_zur_Klasse
..1.1 Vom_struct_zur_Klasse
..1.2 struct_Programm
..1.3 Klassen_Programm
..1.4 Offene_Fragen
..1.5 Historie
..1.6 Objektabstraktion
..1.7 OO_Kundenverwaltung
..1.8 Objektfaehigkeiten
..1.9 Formatierung
..1.10 Motivation
..1.11 Uebung1
..1.12 Uebung2
2 UML
..2.1 Volumenberechnung
..2.2 UML_Klassendiagramm
..2.3 Konstruktor
..2.4 Statische_Variable
3 Strings
..3.1 Klassenbibliotheken
..3.2 stringUML
..3.3 Uebung3
4 Initialisierungen
4 bluej
5 Zeiger_und_Arrays
..5.1 Zeiger
..5.2 Zeiger_und_Funktion
..5.3 Uebung4
6 Vererbung
..6.1 MesswerteUML
..6.2 MesswerteProgramm
..6.3 VererbungsProgramm
..6.4 Vector
..6.5 Uebung
7 Modifikatoren
..7.1 public_Vererbung
..7.2 protected_Vererbung
8 Listen_und_Templates
..8.1 Containertypen
....8.1.1 ListeUML
....8.1.2 ListeProgramm
..8.2 Templates
....8.2.1 Listentemplate
....8.2.2 STLvectorTemplate
..8.3 Uebung5
..8.4 Uebung6
..8.5 Uebung7
9 Java
..9.1 Uebung
..9.2 GettingStarted
..9.3 Animation
..9.4 Hybrid
..9.5 Threads
10 Delegation
11 LayoutProjekt
12 Fenster
13 Uebung
14 Zwischenprojekt
..14.1 Befehle
..14.2 Planung
..14.3 JNI
..14.4 JNIumsetzen
..14.5 Anwendungsklasse
..14.6 GUI01
..14.7 GUI02
15 Rasterlayout
..15.1 Bilder_Packages
..15.2 interfaces
..15.3 ArrayList
..15.4 clone
..15.5 Uebung
16 Nuetzliches
..16.1 Threads
..16.2 Animation
..16.3 RungeKutta
..16.4 Loesungsansatz
..16.5 Internetprogrammierung
....16.5.1 Codegenerierung
....16.5.2 PHP_Programmierung
....16.5.3 PHP_OOP
....16.5.4 Java
17 Algorithmen
..17.1 RungeKutta
..17.2 Loesungsansatz
..17.3 Evoopt
..17.4 Uebung12
..17.5 Uebung8_2014
..17.6 Ausdruecke
18 Uebung10
19 UML_ALT
..19.1 Flaechenberechnung
..19.2 UML_Flaechenberechnung
..19.3 Implementierung
..19.4 ListeUML
..19.5 ListenImplementierung
..19.6 Anwendung

6.1 Die Klasse Messwerte: Ein einführendes Beispiel zu Vererbung mit UML dargestellt

Angenommen wir wollen eine Klasse schreiben, in deren Objekten Messwerte abgelegt werden. Sie soll Methoden kennen, mit denen es möglich ist, immer weitere Messwerte hinzuzufügen und sie soll die aktuelle Reihe an Messwerten als Zeiger auf ein double-Array zur Verfügung stellen können. Ferner soll eine Methode vorhanden sein, um die aktuelle Anzahl der Messwerte anzuzeigen.

Das entsprechende UML-KLassendiagramm sähe so aus:

UML-KLassendiagramm der Klasse Messwerte

Bild 6.1-1: UML-KLassendiagramm der Klasse Messwerte

Nun möchte man im weiteren Verlauf der Programmentwicklung auch Methoden zu den Messwert-Objekten haben, die den Mittelwert und die Streuung der Messwerte berechnen. Es wird zu diesem Zweck eine neue Klasse MesswerteA gechrieben, die als Basisklasse die Klasse Messwerte hat und die zusätzlich die Methoden berechneMittelwert() und berechneStreuung() besitzt. Hier wieder das entsprechende UML-KLassendiagramm:

UML-KLassendiagramm der Klasse MesswerteA

Bild 6.1-2: UML-KLassendiagramm der Klasse MesswerteA

Der ZUsammenhang, dass MesswerteA eine abgeleitete Klasse von Messwerte ist, läßt sich auch in UML darstellen. Hierzu wird ein Pfeil verwendet, der von der abgeleiteten Klasse auf dessen Basisklasse verweist und dessen Spitze aus einem nicht ausgefüllten Dreieck besteht:

Darstellung einer Vererbungsbeziehung in UML

Bild 6.1-3: Darstellung einer Vererbungsbeziehung mit UML-KLassendiagrammen