Suchen

Definition „Eigenschaft (Programmierung)“ Was ist ein Attribut in der OOP?

| Autor / Redakteur: Egoloizos / Stephan Augsten

Attribute sind in der objektorientierten Programmierung die Eigenschaften, die Objekte innerhalb einer Klasse annehmen können. Es handelt sich um Beschreibungen der Daten. Objekte einer Klasse haben dieselben Attribute, ihre Werte können sich jedoch unterscheiden.

Firmen zum Thema

Alle Objekte einer Klasse besitzen gleiche Attribute, die sich mit unterschiedlichen Werten besetzen lassen, hier beispielsweise Rahmenfarbe oder Reifengröße.
Alle Objekte einer Klasse besitzen gleiche Attribute, die sich mit unterschiedlichen Werten besetzen lassen, hier beispielsweise Rahmenfarbe oder Reifengröße.
(Bild: bogs / Unsplash)

Bei Attributen handelt es sich um Daten-Beschreibungen, die den Objekten einer Klasse gemeinsam sind. In der realen Welt sind typische Attribute beispielsweise „Größe“ oder „Gewicht“ oder „Farbe“. Diesen Attributen lassen sich Werte zuzuordnen. So kann das Attribut „Farbe“ etwa den Wert „Blau“ oder „Magenta“ haben. Alle Objekte einer Klasse haben dieselben Attribute. In den Werten können sie sich jedoch unterscheiden. Das nächste Objekt kann für das Attribut „Farbe“ etwa den Wert „Rot“ aufweisen.

Bezogen auf das Fahrradbeispiel aus unserem Definitionsartikel zum Begriff der Klasse wäre beispielsweise beim Objekt „Fahrrad“ ein Attribut der Rahmen. Der spezielle Wert im Falle von „Fahrrad1“ wäre dann „Diamantrahmen“.

Die objektorientierte Programmierung versteht unter Attributen die Definitionsebene der Merkmale oder Werte. Attribute werden für bestimmte Objekttypen als Strukturelemente modelliert oder festgelegt. Zuvor erfolgt eine systematische Ermittlung, Definition und Beschreibung der Attribute für einen Objekttypen. Die über die Objekte vorhandenen Daten werden gemäß dieser Struktur mit ihren Attributwerten gespeichert. Demnach lässt sich jedes Objekt als Gesamtheit der Attributwerte verstehen.

Attribute und Operationen

Grundsätzlich sind jedem Attribut gewisse Regeln zugeordnet. Diese werden auch als Operationen bezeichnet. Hieraus ist abzuleiten, dass sich Objektdefinitionen durch Datentyp-Definitionen erweitern lassen. So lassen sich beispielsweise Standardwerte oder gültige Operationen an der Definition von Attributen beteiligten. Dies gilt auch für Darstellungsformate oder operationelle Einschränkungen (zum Beispiel nicht gestattete mathematische Operationen). Umgekehrt lassen sich diese Werte und Operationen auch als Attribute eines Objekttyps bezeichnen.

Attribute und ihre Arten

Grundsätzlich sind mehrere Typen von Attributen zu unterscheiden. Zu den Attributtypen gehören das Klassenattribut sowie das abgeleitete Attribut. Klassenattribute lassen sich nicht einem spezifischen Objekt zuordnen. Ihrem Namen gemäß gelten sie für die gesamte Klasse sowie alle darin enthaltenen Objekte. In Klassendiagrammen werden Klassenattribute in der UML typischerweise unterstrichen dargestellt.

Klassenattribute werden für Klassen so festgelegt, dass sich die Attribute innerhalb der Klasse nicht ändern. Sie beziehen sich also auf die darin enthaltenen Objekte. Abgeleitete Attribute zeichnen sich dadurch aus, dass sich ihr Wert durch andere Attributwerte berechnen lässt. Abgeleitete Attribute haben in der UML die Kennzeichnung Slash oder „/“. Abgeleitete Attribute sind als Begriff gebräuchlich in der Modellierung (beispielsweise UML), SQL-Datenbanken sowie in den OO-Sprachen. Handelt es sich um objektorientierte Sprachen, so erfahren abgeleitete Attribute ihre Implementierung meist in einer Art und Weise, dass im Rahmen des Attribut-Zugriffs eine Funktion aufgerufen wird, die ihrerseits den Attributwert zurückliefert.

Attribute in der OOP und in Datenbankmodellen

In der Entwicklung von Datenbankmodellen im Speziellen sowie in der OOP allgemein entsprechen Attribute einer Eigenschaft, die genau einem Objekt zugeordnet sind. In der Datenbank-Konzeption entspricht es einer Eigenschaft, die ein Objekt als Element des entsprechenden Datenbankmodells kennzeichnet.

Das einzelne Attribut erfährt dabei eine eindeutige und präzise Zuordnung zu einem Objekt im Modell. Attribute sind grundsätzlich zu einem bestimmten Attributtyp gehörig. Beispiels für Attributtypen sind Textfelder oder Zahlenfelder. Attribute mit ihrem jeweiligen Typmodell bilden analog zu Datenbankmodellen die Feldtypen der Datenbank ab. Attribute sind ein Ausgangspunkt, von dem jede Programmiersprache in der objektorientierten Programmierung sowie auch die Web-Programmierung auf bestimmte definierte Eigenschaften zugreift.

Beispiele und Anwendungsbereiche für Attribute

In IT und Programmierung gibt es mehrere Anwendungsbereiche, in denen Attribute eine wesentliche Rolle spielen. In Sprachen wie HTML, XML oder SGML sind Attribute ein wichtiges Mittel zur Definition von Eigenschaften. In der HTML fungieren als Attribute als Tags. Sie definieren Objekte näher.

Dabei folgen sie einem bestimmten Aufbau und können unterschiedliche Ausprägungen haben. Hierbei ist zu berücksichtigen, dass nur bestimmte Arten von Attributen nach den Standards des W3C (World Wide Web Consortium) erlaubt sind. In der HTML ist ein Attribut im Zusammenhang mit Tags zu verwenden. Es wird innerhalb eines Elements (beispielsweise eines Überschrift-Tags) an den Anfang gesetzt. Es folgt ein Gleichheitszeichen. Im Anschluss wird der Wert des Attributs in Anführungszeichen definiert. Es existieren gängige Attribute, die grundsätzlich für sämtliche HTML-Elemente Anwendung finden können.

  • Dazu gehört das Attribut „title“, mit dem ein HTML-Element mit einem Titel versehen wird. Dieser Titel kann auf einer Webseite angezeigt werden, sobald ein Nutzer mit dem Cursor über diesen Titel fährt.
  • Das Attribut „alt“ findet Verwendung, um im Quellcode einer Seite oder Grafik einen alternativen Beschreibungstext zu hinterlegen.
  • Mit den Attributen „width“ und „height“ lassen sich bei Grafiken in HTML die Größenformate spezifizieren.
  • Die Attribute „href“ und „src“ dienen der Spezifikation einer im HTML-Code hinterlegten URL für eine Webseiten-Adresse. Auch eine Bild-URL lassen sich über dieses Attribut spezifizieren.

In XML und SGML definieren Attribute die Eigenschaften der Elemente und der Variablen. Auch in der alltäglichen Datenverarbeitung spielen Attribute eine wichtige Rolle. Die Spezifikation von Dateien und ihrer Eigenschaften geht über Attribute vonstatten. Zu den wichtigsten Attributen der Dateien gehören Dateityp, Name, Erstellungsdatum und Größe.

(ID:46849221)