\documentclass{schuleab}
\usepackage[utf8]{inputenc}
\usepackage{schulinf}

% Dieses Dokument ist in der Zusammenarbeit von Informatikreferendaren und
% ehemaligen Informatikreferendaren der Studienseminare (heute ZfsL) Arnsberg,
% Hamm und Solingen entstanden.
%
% Das Dokument steht unter der Lizenz: Creative Commons by-nc-sa Version 4.0
% http://creativecommons.org/licenses/by-nc-sa/4.0/deed.de
%
% Nach dieser Lizenz darf das Dokument beliebig kopiert und bearbeitet werden,
% sofern das Folgeprodukt wiederum unter gleichen Lizenzbedingungen vertrieben
% und auf die ursprünglichen Urheber verwiesen wird.
% Eine kommerzielle Nutzung ist ausdrücklich ausgeschlossen.
%
% Die Namensnennung durch einen Verweis und die Lizenzangabe der ursprünglichen
% Urheber auf den Materialien für Schülerinnen und Schüler ist erforderlich.
%
% Die Sammlung der Dokumente steht unter
% http://ddi.uni-wuppertal.de/material/materialsammlung/
% zur Verfügung.
%
% Das LaTeX-Paket zum Setzen der Dokumente der Sammlung steht
% unter  http://www.ctan.org/pkg/schule
% zur Verfügung.

\usepackage[pdfauthor={Referendare der Informatikfachseminare Arnsberg, Hamm und Solingen}]{hyperref}
\includexmp{lizenz}
\cclizenz{byncsaeu}
\footerQRLink{materialsammlung_qr_url.pdf}

\svnid{$Id: ab_04_klassendiagramm.tex 1168 2015-03-21 15:37:18Z humbert $}

\dokName{Klassendiagramme}
\jahrgang{EF}

\def\bodydir{./}

\begin{document}

\section*{Die grafische Darstellung von Klassen -- Klassenkarte}

Prinzipiell ähnelt die grafische Darstellung von Klassen derjenigen von 
Objekten, es existieren jedoch auch einige Unterschiede.

\begin{center}
  \begin{tabular}{c@{\hspace{2cm}}c}
    \textbf{Objekt} & \textbf{Klasse} \\
    \\
    \includegraphics{\bodydir/objekt_klassen_karte_wecker-1} & \includegraphics{\bodydir/objekt_klassen_karte_wecker-2} \\
  \end{tabular}
\end{center}

Auffällig ist zunächst, dass Objekte durch abgerundete Ecken gekennzeichnet 
werden, Klassen hingegen nicht.
Anstelle des Objektbezeichners steht bei Klassen der 
Klassenname/Klassenbezeichner. Er beginnt per Konvention immer mit einem 
Großbuchstaben.

Da Klassen Abstraktionen von Objekten sind, gibt es keine konkreten 
Attributwerte.
Stattdessen wird angegeben, welche Art von Wert (Typ) als Attributwert 
zulässig ist.
Beispiele für Typen sind Zeichenketten, Zahlen
% reelle Zahlen, 
%Datumswerte 
und Wahrheitswerte. Auch Objekte können Attributwerte bei Objekten darstellen --
hier wird dann in der Klasse die zugehörige Klasse hinter dem Doppelpunkt 
als Typ des Attributs angegeben.

 Üblicherweise wird sowohl in Klassen- als auch in Objektdiagrammen die Typen 
 der Rückgabewerte der Methoden aufgeführt.
 In der obigen Abbildung ist dies nur im Klassendiagramm geschehen.

Die aus den Objektdiagrammen bekannten Beziehungen (die Hat- und die 
Kennt-Bezie\-hung) existieren auch zwischen Klassen.


\minisec{Aufgaben}

Ihnen liegt das gemeinsam erstellte Objektdiagramm vor. Erstellen Sie das 
zugehörige Klassendiagramm nach der folgenden Anleitung:
\begin{enumerate}
 \item Tragen Sie zunächst für jede erforderliche Klasse den Klassenbezeichner, 
  die Attributbezeichner mit dem Typ für mögliche Attributwerte und die 
  Methoden (nach dem Schema aus der Abbildung oben rechts) in die 
  Klassenkarte ein.
 \item Tragen Sie die Beziehungen zwischen den Klassen ein.
\end{enumerate}
%Jedes Gruppenmitglied muss dem Kurs das Arbeitsergebnis präsentieren können.

\end{document}
