OOP Flashcards
was ist Polymorphie ?
bedeutet: Vielgestaltigkeit.
Programmkonstrukte oder Programmteile für Objekte (bzw. Werte)
mehrerer Typen einsetzbar sind.
drei Arten der Polymorphie?
› Subtyp-Polymorphie
› Parametrische Polymorphie
› Ad-hoc Polymorphie
Beziehungen zwischen Klassen
› Abhängigkeit (Referenz) => Warenkorb/Produkt oder Client/Supplier
› Assoziation (kennt-benutzt-Beziehung) => Person / Computer
› Aggregation (Ganzes/Teil-Beziehung) => Auto / Fahrer
› Komposition (Ganzes/Teil + Besitz) => Gebäude / Raum
› Vererbung (ein-Beziehung) => Tier / Vogel, Fisch, Hund
› Implementierung (Vertrag)
was ist Aggregation?
› ein Objekt der einen Klasse, mehrere Objekte einer
anderen Klasse enthalten kann aber nicht enthalten muss.
› Die Lebensdauer des Ganzen und der Teile sind voneinander unabhängig.
was ist Komposition?
› eine starke Form der Aggregation
› Wird das Ganze zerstört, existieren auch die Teile nicht mehr.
› Ein Teil kann nur zu genau einem Ganzen gehören.
Vererbung
Bei der Vererbun g(oder auch Generalisierung oder Spezialisierung) kann eine Klasse die Attribute und Methoden einer anderen Klasse erben.
› Jedes Objekt vom Typ der Subklasse ist immer auch ein Objekt vom Typ der Basisklasse.
Konstruktor einer Subklasse mit Parameter
public Hero(string ID, string name) : base(name) {
}
was ist ATTRIBUT?
Beschreibung
des Zustands
eines Objekts
was ist METHODE?
Fähigkeiten
eines
Objektes
statische Klasse
lediglich statische Funktionen, Variablen und Eigenschaften enthalten.
Beispiel: Klasse Math.
Durch das Schlüsselwort static vor dem Schlüsselwort class darf die Klasse keine nicht-statische Funktionen, Variablen und Eigenschaften enthalten.
Zugriff mit KlassenName
Was ist eine
statische Methode?
haben den Vorteil, dass man nicht jedes Mal ein neues Objekt erstellen muss, wenn man sie aufrufen will. Eine statische Methode kann mit dem Namen der Klasse aufgerufen werden, die sie deklariert.