Informatikmaterialien 
von Tino Hempel

Startseite | Informatik | Physik | Mathematik | Sonstiges |


Richard-Wossidlo-Gymnasium Ribnitz-Damgarten
Fachbereich Informatik


Objekte und Klassen 


Objekt, Attribut, Methode

Im Abschnitt Datenbanken ist der Begriff der Entität wie folgt eingeführt worden: Eine Entität ist ein eindeutig identifizierbares Objekt der realen Welt. In der Softwareentwicklung sind ebenfalls Objekte mit ihren Eigenschaften interessant. 

Soll etwa ein neues James Bond-Spiel auf dem Computer programmiert werden, so benötigt man (sicherlich) das Objekte "James Bond".

Ein Objekt kann z. B. eine Person, ein Subjekt, ein Ereignis, ein Prozess oder ein Begriff sein. Die Objekte werden durch ihren Zustand bestimmt, d. h. durch die Angabe eines Attributs (Eigenschaft) und des zugehörigen Attributwertes

Objekt: James Bond; 
Attribute: Name, Vorname, Dienstnummer, Waffe, ... 
Attributwerte: Bond, James, 007, Walther PPK, ...

Objektdiagramme beschreiben den momentanen Zustand des Objekts/der Instanz.

d

 Objektzustand

Diese bisherige Sichtweise ist allerdings unvollständig. Das Objekt James Bond besitzt nicht nur Eigenschaften, sondern auch Fähigkeiten bzw. Verhalten. Es kann z. B. laufen, schlafen, essen, trinken usw. 

Objekt: James Bond; 
Attribute: Name, Vorname, Dienstnummer, Waffe, ... 
Attributwerte: Bond, James, 007, Walther PPK, ...
Fähigkeiten: laufen, schlafen, essen, trinken, ermitteln ...

Das Verhalten lässt sich in zwei Arten unterscheiden: Ein Objekt kann 

Die Fähigkeiten eines Objekts spielen in der Aktion mit anderen Objekten die entscheidende Rolle des Datenaustauschs.

James Bond muss auf die Nachricht vom Objekt M reagieren können. Dies führt entweder dazu einen Auftrag auszuführen oder die Anfrage zu beantworten.

 

ermittle

 

Anfrage Pfeil Antwort

Ein Auftrag oder eine Anfrage ist nur sinnvoll, wenn das Empfängerobjekt die Fähigkeit besitzt, diesen zu erfüllen/beantworten. Das Empfängerobjekt muss eine ensprechende Methode zur Verfügung stellen. Ist der Auftrag erledigt, muss eine Bestätigungsmeldung erfolgen. Die Anfrage endet stets mit einer Nachricht an das Frageobjekt. Wie die Methode intern arbeitet, ist für den Auftraggeber uninteressant.

Ein Objekt ist ein Gegenstand des Interesses, insbesondere einer Beobachtung, Untersuchung oder Messung der realen Welt. 

Jedes Objekt wird durch seinen Zustand (Attributwerte zu einem bestimmten Zeitpunkt) beschrieben.  Das Verhalten eines Objektes wird durch eine Menge von Methoden (Anfragen, Aufträge) beschrieben. 

Programmierte Objekte sollten stets mit einem Kleinbuchstaben beginnen.

in Anlehnung an: Horn, Kerner, Forbrig: Lehr- und Übungsbuch Informatik. Band 1: Grundlagen und Überblick, 2. Auflage, Leipzig.


Klassen, Klassendiagramm, OOM

In Analogie zu dem Begriffe Entitätstyp der relationalen Datenbanken definiert man nun den Begriff der Klasse. 

Eine Klasse beschreibt eine Sammlung von Objekten mit gleichen Eigenschaften (Attributen), gemeinsamer Funktionalität (Methoden), gemeinsamen Beziehungen zu anderen Objekten und gemeinsamer Semantik.

Die Einteilung in Klassen kann je nach Person, Lebenserfahrung oder Fragestellung unterschiedlich sein. 

Ein Exemplar einer Klasse ist ein Objekt bzw. eine Instanz. Eine Klasse bietet Methoden an, die von Objekten genutzt werden können. Die Klasse stellt also eine Schablone dar, nach der Objekte (dieser Klasse) erzeugt werden können.  Eine Methode ist ein Algorithmus, der einem Objekt  der Klasse abgearbeitet werden kann.

Von einer Klasse lassen sich viele gleichartige Objekte erzeugen, diese nennt man auch Instanzen.

Klassennamen sollten stets mit einem Großbuchstaben beginnen, ihnen kann ein kleines c vorangestellt werden.

in Anlehnung an: Horn, Kerner, Forbrig: Lehr- und Übungsbuch Informatik. Band 1: Grundlagen und Überblick, 2. Auflage, Leipzig.

Grafische Schreibweise für Klassen (UML-Klassendiagramm)

Die Klasse wird durch die Angabe aller Eigenschaften, Aufträge und Anfrage notiert. Eine Darstellung einer Klasse liefert das UML-Klassendiagramm. 

Klassendiagramm

Im oberen Kasten wird dabei der Name der Klasse notiert. 

Der zweite Kasten führt alle Eigenschaften auf. Diese können auf unterschiedliche Weise gespeichert werden, die der Typ festlegt. Typen können u. a. sein: 

Außerdem gibt es noch die Möglichkeit, das ein Wert als String (z. B. "Hallo") gespeichert wird. String (man achte auf die Großschreibung) ist kein Datentyp, sondern steht für einen Objekttyp.

Der dritte Kasten notiert alle Methoden. Aufträge können dabei durch ein Ausrufezeichen, Anfragen durch ein Fragezeichen gekennzeichnet werden. Da die Anfrage eine Antwort impliziert, muss der Antwort-Typ mit angegeben werden, in Java erhält ein Auftrag ebenfalls einen Anworttyp, nämlich void (engl. leer). Methoden können zur näheren Bestimmung Parameter enthalten. Diese werden Typ angegeben. Die komplette Angabe wird auch Signatur oder Kopf einer Methode genannt.

In der objektorientierten Softwareentwicklung kommt es darauf an, die für eine Problemstellung geeigneten Objekte und Objektklassen herauszufinden und sich zu überlegen, wie diese auf einen Computer abgebildet werden können. Diesen Vorgang nennt man objektorientierte Modellierung (OOM). 



zur Startseite
© Tino Hempel 1997 - 2006 Im Web vertreten seit 1994.
Eine Internet-Seite aus dem Angebot von Tino Hempel.