Start


Ein Objekt im Sinne der Theorie der Objektorientierung ist die Darstellung eines individuellen Gegenstands oder Wesens (konkret oder abstrakt, real oder virtuell) aus dem zu modellierenden Problembereich der realen Welt. Ein Objekt ist eindeutig bestimmt durch seine Attribute (Daten, Eigenschaften) und durch seine Methoden (Funktionen, Verhalten). Attribute werden oft auch Instanzvariablen genannt.

Es ist in der Objektorientierung allgemein üblich, den lesenden und schreibenden Zugriff auf Attributwerte über „get“- und "set“-Methoden zu ermöglichen. (Oft auch „getter“ und „setter“ genannt.) Die get-Methoden lesen dabei die Werte der Attribute, die set-Methoden dagegen schreiben, also verändern sie. Jedes einzelne Attribut hat dabei im Allgemeinen seine eigenen get- und set-Methoden.

Auf den ersten Blick erscheint die Kapselung von Attributen umständlich. Warum sollte man den Zugriff auf ihre Werte nicht direkt gestatten? Es gibt hauptsächlich zwei Gründe für das Paradigma der Kapselung, die sich vor allem in komplexen Softwaresystemen auswirken. Einerseits kann der Programmierer über die Methoden den Zugriff genau steuern; manche Attribute wie z.B. Passwörter soll ein Benutzer der Objekte vielleicht gar nicht sehen dürfen oder nicht verändern können, und so werden keine get- bzw. set-Methoden geschrieben.

Das Schema ist sehr einfach: Lautet der Name des Attributs attribut, so nennt man seine get-Methode einfach getAttribut(), und seine set-Methode setAttribut(wert). Die get-Methode wird ohne Parameter aufgerufen und liefert den Wert des Attributs zurück, ihr Rückgabetyp ist also der Datentyp des Attributs. Umgekehrt muss der set-Methode als Parameter der Wert übergeben werden, den das Attribut nach der Änderung haben soll, sie gibt jedoch keinen Wert zurück, ist also void.