Objektorientierung
Objekt fasst Daten (Eigenschaften) und Verhalten (Methoden) zusammen, stellen aber nicht alle Eigenschaften und das komplette Verhalten eines Gegenstandes aus der realen Welt dar, sondern abstrahiert die wichtigsten Informationen
Objekte mit gleichen oder sehr ähnlichen Eigenschaften und Methoden werden in Klassen zusaamengefasst und in eine hierarchische Beziehung gebracht. Untergeordnete Klassen können von übergeordneten Klassen erben
Vererbung
wesentliches Konzept der Objektorientierung
feste Regeln:
eine Klasse kann nur von der Klasse erben, die in der Klassenhierarchie unmittelbar über ihr liegt. Diese Klasse wird auch unmittelbare Oberklasse oder superclass genannt
auch umgedreht möglich. Die Klasse wird dann auch unmittelbare Unterklasse oder subclass genannt
Generalisierung: Eine übergeordnete Klasse generalisiert eine untergeordnete Klasse - sie verallgemeinert die untergeordnete Klasse
Spezialisierung: Eine untergeordnete Klasse spezialisiert eine übergeordnete Klasse - sie erweitert die übergeordnete Klasse
wenn Eigenschaften oder Methoden einer übergeordnete Klassen verändert oder ergänzt werden, ändern sich damit auch die geerbten Eigenschaften und die geerbten Methoden der untergeordneten Klassen
Mehrfachvererbung/mehrfache Vererbung: eine Klasse kann auch mehrere Oberklassen haben, von denen sie erbt
Instanzen
Eine Klasse ist nur ein Bauplan. Um sie zu benutzen, muss eine Instanz erstellt werden
Zwischen Instanzen und Klassen besteht eine 1:n-Beziehung
Zuordnung einer Instanz zu einer Klasse lässt sich nicht nachträglich ändern
abstrakte Klasse <-> konkrete Klasse
abstrakte Klasse: davon können keine Instanzen gebildet werden
konkrete Klasse: Klasse mit Instanzen
Datenkapselung / information hiding
ein Objekt sollte niemals direkt auf die Eigenschaften eines anderen Objekts zugreifen, sonder immer nur Methoden im Objekt aufrufen
dadurch lassen sich Klassen problemlos wiederverwenden -> Prinzip findet sich auch beim Rapid Application Development (RAD). Dabei lassen sich Programme in großen Teilen aus fertigen Bausteinen zusammensetzen. Die Bausteine werden dabei durch Klassen abgebildet.
wie streng Datenkapselung erfolgt, wird über Sichtbarkeiten festgelegt:
privat: Eigenschaften und Methoden sind nur für die Klasse sichtbar
öffentlich: Eigenschaften und Methoden sind auch für alle anderen Klassen sichtbar
ein Objekt fasst Daten (Eigenschaften) und Verhalten (Methoden) zusammen, stellt nun aber nicht alle Eigenschaften und das komplette Verhalten eines Gegenstandes aus der realen Welt dar, sondern abstrahiert die wichtigsten Informationen
Objekte mit gleichen oder sehr ähnlichen Eigenschaften und Methoden werden in Klassen zusammengefasst und in iene hierarchische Beziehung gebracht. Die untergeordneten Klassen können von den übergeordneten Klassen erben
Zuletzt geändertvor 2 Monaten