Objekt in der Informatik einfach erklärt
Du unterscheidest Objekte und Klassen als ihre Baupläne, beschreibst Werte und Aktionen und stellst den aktuellen Zustand eines Objekts dar.
Kurz gesagt
Ein Objekt ist hier ein einzelnes Exemplar einer Klasse, also eines Bauplans. Es besitzt Eigenschaften mit aktuellen Werten und kann festgelegte Aktionen ausführen.
Ein Modell ist eine vereinfachte Beschreibung. Wir betrachten ein Modell, in dem einzelne Objekte nach Klassen als gemeinsamen Bauplänen entstehen. Du untersuchst ihre Eigenschaften, ihre möglichen Aktionen und die Darstellung ihrer aktuellen Werte. Alle Beispiele dieser Lektion sind ausgedacht.
Deine Lernziele
Eine Klasse ist ein Bauplan für Objekte. Sie legt fest, welche benannten Eigenschaften und welche ausführbaren Aktionen ihre Objekte haben. Eine solche Eigenschaft heißt Attribut, eine ausführbare Aktion heißt Methode.
Ein Objekt ist ein einzelnes Exemplar einer Klasse. Es besitzt die festgelegten Attribute. Der aktuelle Wert eines Attributs an diesem Objekt heißt Attributwert. Beispielsweise ist farbe ein Attribut und „blau“ ein möglicher Attributwert. Mehrere Objekte derselben Klasse können unterschiedliche aktuelle Werte besitzen.
Ein Objekt kann einen Namen erhalten, damit du es gezielt ansprechen kannst. Im folgenden Modell heißt ein Objekt lichtOst. Seine Klasse heißt Signallicht. Die runden Klammern in ausschalten() kennzeichnen hier einen Methodennamen. Die genaue Wirkung einer Methode muss durch eine Modellregel festgelegt werden; der Name allein legt sie nicht vollständig fest. Unsere Schreibweisen beschreiben Modelle und sind kein ausführbarer Programmcode.
Objekt
Ein Objekt ist im betrachteten Modell ein einzelnes Exemplar einer Klasse. Es besitzt Attribute mit aktuellen Werten und kann die Methoden seiner Klasse ausführen.
| Begriff | Bedeutung | Ausgedachtes Beispiel |
|---|---|---|
| Klasse | Gemeinsamer Bauplan | Signallicht |
| Objekt | Ein einzelnes Exemplar | lichtOst |
| Attribut | Benannte Eigenschaft | farbe |
| Attributwert | Aktueller Wert einer Eigenschaft | „blau“ |
| Methode | Ausführbare Aktion | ausschalten() |
Teste dich
Der Zustand eines Objekts wird im betrachteten Modell durch seine aktuellen Attributwerte beschrieben. Hat es mehrere Attribute, gehören deren aktuelle Werte gemeinsam zum Zustand. Eine Änderung eines Attributwerts verändert den Zustand.
Das Verhalten beschreibt, welche Aktionen das Objekt mithilfe seiner Methoden ausführen kann. Dazu gehört, was diese Aktionen nach den festgelegten Modellregeln bewirken. Eine Methode kann Attributwerte verändern. Sie kann aber auch einen Wert ausgeben, ohne den Zustand zu ändern.
Im ausgedachten Modell Schiebetuer gibt es genau ein Attribut: position. Seine möglichen Werte sind „geschlossen“ und „offen“. Die Methode oeffnen() setzt position auf „offen“. Die Methode positionLesen() gibt den aktuellen Wert aus und verändert ihn nicht. Aus einem einzelnen Ablauf kannst du die Wirkung in diesem Beispiel ablesen; er ersetzt keine allgemeine Beschreibung aller möglichen Abläufe.
Beispiel: Eine Schiebetür öffnen und ihren Zustand lesen
- 1Das Objekt tuerLinks gehört zur Klasse Schiebetuer. Anfangs hat position den Wert „geschlossen“.
- 2tuerLinks führt oeffnen() aus. Nach unserer Modellregel hat position danach den Wert „offen“.
- 3Anschließend führt tuerLinks positionLesen() aus. Die Ausgabe lautet „offen“.
- 4position bleibt dabei „offen“. Das Lesen hat den Zustand nicht verändert.
Merke: Zustand: die aktuellen Attributwerte. Verhalten: die möglichen Aktionen und ihre festgelegten Wirkungen. Eine ausgeführte Methode muss den Zustand nicht verändern.
Teste dich
Ein Objektdiagramm zeigt Objekte und ihre Werte als Momentaufnahme eines bestimmten Zeitpunkts. Ein einzelner Kasten darin wird hier Objektkarte genannt. Die Karte kann alle Attribute oder eine für ihren Zweck passende Auswahl zeigen. Bei einer Auswahl siehst du entsprechend nur einen Teil des Zustands.
Für ein benanntes Objekt mit einer bekannten Klasse lautet die Kopfzeile: Instanzname : Klassenname. Der Instanzname ist der Name des einzelnen Objekts. Der Klassenname bezeichnet seinen Bauplan. In einer Zeichnung wird die gesamte Kopfzeile unterstrichen, einschließlich Doppelpunkt und Klassenname. Die folgenden Textbeschreibungen geben den Inhalt der Karten wieder; die Unterstreichung ergänzt du beim Zeichnen.
Unter den Kopf schreibst du die ausgewählten Attribute mit ihren aktuellen Werten. Die Schreibweise faecher = 6 bedeutet hier: Das Attribut faecher hat den Wert 6. In unseren Objektkarten lassen wir Methoden weg, weil sie sich aus der zugehörigen Klasse ergeben. Werte eines früheren oder späteren Zeitpunkts gehören nicht in dieselbe Momentaufnahme.
Der Instanzname darf fehlen, etwa bei einem unbenannten Objekt. Ist der Klassenname unbekannt, darf auch er fehlen. Allgemein können mehrere Typbezeichnungen durch Kommas getrennt im Kopf stehen. Ein Typ bezeichnet hier eine Art, zu der ein Objekt gehört; in unseren Beispielen ist das jeweils eine Klasse. Wir üben mit einem bekannten Instanznamen und genau einem bekannten Klassennamen.
Beispiel: Die Objektkarte eines Regals lesen
- 1Für das ausgedachte Objekt leseecke ist die Klasse Regal bekannt.
- 2Kopfzeile: leseecke : Regal. Beim Zeichnen wird diese ganze Zeile unterstrichen.
- 3Erste Attributzeile: faecher = 6.
- 4Zweite Attributzeile: belegt = 2.
- 5Die Karte zeigt zum betrachteten Zeitpunkt sechs Fächer, von denen zwei belegt sind. Für diesen Zweck sind diese beiden Attribute ausgewählt.
Merke: Lies zuerst den Objektnamen links und den Klassennamen rechts vom Doppelpunkt. Lies darunter die gezeigten aktuellen Attributwerte. Achte darauf, welchen Zeitpunkt die Karte darstellt.
Teste dich
Alles auf einen Blick
Objekt
Die Klasse ist der Bauplan; das Objekt ist ein einzelnes Exemplar.
Ein Attribut benennt eine Eigenschaft, ein Attributwert ihre aktuelle Ausprägung am Objekt.
Die aktuellen Attributwerte beschreiben gemeinsam den Zustand.
Methoden ermöglichen Aktionen; ihre festgelegte Wirkung kann den Zustand verändern oder unverändert lassen.
Bei bekannten Namen steht oben Instanzname : Klassenname, als ganze Zeile unterstrichen. Darunter stehen ausgewählte aktuelle Attributwerte.
Eine Objektkarte für einen Briefkasten ausfüllen
- 1Vorgabe im ausgedachten Modell: Das Objekt kastenTor gehört zur Klasse Briefkasten. Aktuell hat farbe den Wert „grün“ und belegt den Wert „nein“. Beide Attribute sollen gezeigt werden.
- 2Ordne die Namen zu: kastenTor ist der Instanzname, Briefkasten der Klassenname.
- 3Schreibe die Kopfzeile kastenTor : Briefkasten und unterstreiche sie vollständig.
- 4Schreibe darunter die Attributzeile farbe = „grün“.
- 5Ergänze die Attributzeile belegt = „nein“. Beide Zeilen zeigen die vorgegebenen aktuellen Werte.
- 6Trage keine Methoden ein. Damit ist die verlangte Objektkarte ausgefüllt.
Fehler finden
Fehler in Zeile 2Die zweite Aussage verwechselt den Namen des einzelnen Objekts mit dem Namen seines Bauplans. Richtig: bankHof ist der Instanzname; Sitzbank ist der Klassenname.
Lückentext
Im ausgedachten Modell legt der Bauplan Gartenlicht Eigenschaften und ausführbare Aktionen für seine Objekte fest. Gartenlicht ist damit eine . Beim erfundenen Objekt pultVorn heißt eine Eigenschaft material. Sie hat gerade den Wert „Holz“. „Holz“ ist hier ein . Eine Objektkarte soll den jetzigen Zeitpunkt zeigen. Beim erfundenen Objekt vorratWest hat anzahl gerade den Wert 30; erst später steigt er auf 40. In die aktuelle Karte gehört deshalb der Wert .