Grundgedanke Objektorientierte Programmierung: Klassen und Objekte
- alles wird als ein Objekt gesehen!
- jedes Objekt hat Eigenschaften/Attribute
- jedes Objekt hat Methoden
- die Klasse bildet den Bauplan – das Objekt ist der fertige Bau
Klassen und Objekte
In einer Klasse ist festgelegt, welche Attribute (flapsig Eigenschaften, Variablen) und Methoden (flapsig Fähigkeiten, Funktionen) diese Klasse besitzt. Im davon erzeugten Objekt werden die Eigenschaften mit Werten belegt.
Beispiel Auto:
Eigenschaft:
- Farbe
- benötigter Kraftstoff
- Anzahl Räder
- Preis
Methoden:
- beschleunigen
- bremsen
- Messung aktuelle Geschwindigkeit
- Messung aktuell vorhandene Kraftstoffmenge
- u.v.m.
So – nun wird von einer Klasse ein Objekt gebildet (toller Sprachgebrauch, der viel hermacht und erst mal verwirrt).
Warum das? Nun, man möchte mehr als 1 Auto haben. Also werden aus dem Bauplan der Klasse so viele Objekte abgeleitet, wie man benötigt, denen man dann die gewünschten Eigenschaften zuweisen kann.
Oder anders ausgedrückt – man zieht nicht in den Bauplan ein, sondern in das fertig gebaute Haus.
Beispiel Auto und Familie
Beispiel: Die Familie möchte gerne 3 Autos (mieses Beispiel für eine grüne Stadt wie Tübingen)
Erstes Auto muss was hermachen, für das Ausgehen und die Geschäftsfahrten – also Farbe Silber und teuer, Größe mindestens 3 Meter
zweites Auto: klein und wendig und knallrot, damit man es auf dem Parkplatz wiederfindet, und kurz, damit man überhaupt einen Parkplatz bekommt und billig und sicher, damit der Nachwuchs es ohne größere Schaden zu nehmen zu Schrott fahren kann.
drittes Auto für Urlaub: am besten einen günstigen Mietwagen
Wir haben also 3 Objekte (von der 1 Klasse Auto) – die Klasse kann also als Blaupause (bzw. Bauplan) angesehen werden und die daraus abgeleiteten Objekte als reale Objekte, die durch den Bauplan einfach und in beliebiger Menge gebaut (erzeugt) werden können.
Wenn Sie einen Fehler finden, bitte mitteilen (egal ob Schreibfehler oder inhaltlicher Fehler).
Mit Maus fehlerhafte Stelle markieren und übernehmen mit folgendem Button: