Objektorientierung: Unterschied zwischen den Versionen
Thomas (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
|||
| (4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
== Einführung == | == Einführung == | ||
'''Objektorientierung''' (kurz '''OO''') bezeichnet ein Paradigma in der Softwareentwicklung, bei dem komplexe Systeme durch das Zusammenspiel kooperierender [[Objekt|Objekte]] modelliert werden. Objektorientierung kommt vor allem in der objektorientierten Programmierung (z. B. mit [[Java]]) zum Einsatz, findet jedoch auch in vorgelagerten Phasen wie der | '''Objektorientierung''' (kurz '''OO''') bezeichnet ein Paradigma in der Softwareentwicklung, bei dem komplexe Systeme durch das Zusammenspiel kooperierender [[Objekt|Objekte]] modelliert werden. Objektorientierung kommt vor allem in der objektorientierten Programmierung (z. B. mit [[Java]]) zum Einsatz, findet jedoch auch in vorgelagerten Phasen wie der objektorientierten Analyse und dem objektorientierten Entwurf (häufig in [[Unified Modeling Language|UML]]) Anwendung. | ||
Ein [[Objekt|Objekt]] wird durch definierte [[Attribut|Attribute]](Eigenschaften) und [[Methode|Methoden]] (Verhalten) charakterisiert. Objekte können zudem miteinander kommunizieren, indem sie Informationen empfangen oder senden. | Ein [[Objekt|Objekt]] wird durch definierte [[Attribut|Attribute]](Eigenschaften) und [[Methode|Methoden]] (Verhalten) charakterisiert. Objekte können zudem miteinander kommunizieren, indem sie Informationen empfangen oder senden. | ||
| Zeile 15: | Zeile 15: | ||
=== Kapselung === | === Kapselung === | ||
Kapselung bezeichnet das Verbergen der Implementierungsdetails eines Objekts nach außen. Eine Klasse legt über [[Zugriffsmodifikator|Sichtbarkeiten]] fest, welche ihrer Attribute und Methoden von außen zugänglich sind. Nach außen sichtbare Elemente bilden die [[Schnittstelle]] des Objekts, während dessen innerer Zustand und die Implementierung der Methoden vor direkter Einflussnahme von außen geschützt sind. | |||
=== Vererbung === | === Vererbung === | ||
| Zeile 23: | Zeile 23: | ||
[[Polymorphie]] (Vielgestaltigkeit) ist eng mit der [[Vererbung]] verbunden. Sie ermöglicht es, dass Methoden, die in einer Basisklasse definiert sind, in abgeleiteten [[Klassen]] eine spezifischere Implementierung erhalten. Ein Methodenaufruf kann sich somit zur [[Laufzeit]] auf unterschiedliche Implementierungen derselben [[Methodensignatur]] beziehen, abhängig vom tatsächlichen Typ des Objekts. | [[Polymorphie]] (Vielgestaltigkeit) ist eng mit der [[Vererbung]] verbunden. Sie ermöglicht es, dass Methoden, die in einer Basisklasse definiert sind, in abgeleiteten [[Klassen]] eine spezifischere Implementierung erhalten. Ein Methodenaufruf kann sich somit zur [[Laufzeit]] auf unterschiedliche Implementierungen derselben [[Methodensignatur]] beziehen, abhängig vom tatsächlichen Typ des Objekts. | ||
[[Kategorie: | [[Kategorie:Programmierung]] | ||
[[Kategorie:AHR_I_Informatik_LK]] | |||
[[Kategorie:FI_I_SDM]] | |||
[[Kategorie:FI_I_TP1]] | |||