Die Unified Modeling Language (UML) ist eine standardisierte grafische Modellierungssprache für objektorientierte Software. Das wichtigste Diagramm für das Abitur ist das Klassendiagramm: es zeigt die Klassen eines Systems mit ihren Attributen und Methoden sowie die Beziehungen zwischen ihnen. UML-Diagramme dienen als sprach-unabhängige Skizze, aus der sich Java oder Python direkt ableiten lässt.
Eine Klasse wird als Rechteck mit drei Abschnitten dargestellt: Klassenname oben, Attribute in der Mitte, Methoden unten. Sichtbarkeiten werden mit Symbolen markiert: + für public, - für private, # für protected, ~ für package.
+----------------------+
| Person |
+----------------------+
| - name : String |
| - alter : int |
+----------------------+
| + getName() : String |
| + setAlter(a:int) |
| + begruessen(): String|
+----------------------+
Statische Attribute und Methoden werden unterstrichen, abstrakte Klassen und Methoden kursiv gesetzt.
Die wichtigsten Beziehungstypen:
An den Enden einer Beziehung steht die Kardinalität, die angibt, wie viele Objekte beteiligt sein können:
1 – genau eins0..1 – null oder eins* oder 0..* – beliebig viele1..* – mindestens eins3..7 – zwischen drei und siebenBeispiel: Eine Schule hat 1..* Klassen, eine Klasse hat 1 Lehrer.
Aus einem UML-Klassendiagramm lässt sich Java direkt erzeugen. Die Klasse Auto mit Attribut - ps : int und Methode + starten() : void wird zu:
public class Auto {
private int ps;
public void starten() { /* ... */ }
}
In Python entsprechend:
class Auto:
def __init__(self):
self._ps = 0
def starten(self):
passVerwechslung von Aggregation und Komposition (Diamant gefüllt vs. leer), Vererbungspfeil in falsche Richtung (zeigt zur Oberklasse, nicht zur Unterklasse), fehlende Multiplizitäten und Verwechslung von Sichtbarkeitssymbolen (- ist privat, nicht #).
Zusammenfassung: Klassendiagramme zeigen Klassen mit Attributen, Methoden und Beziehungen. Sichtbarkeiten und Multiplizitäten ermöglichen präzise Modellierung.
Abitur-Tipp: Bei UML-Aufgaben immer prüfen: Pfeilrichtung der Vererbung zur Oberklasse, Diamant am „Ganzen“, Multiplizitäten an beiden Enden.