003
29.06.2003, 20:05 Uhr
Spacelord
Hoffnungsloser Fall
|
Gaaaaaanz grob gesehen sind Klassen ein Mittel die menschliche Denkweise in Programme zu fassen. Nehmen wir als Beispiel die Klasse Fahrzeug.Ein Fahrzeug hat eine Anzahl von Plätzen für Mitfahrer,ein Fahrzeug hat ein Gewicht,ein Fahrzeug hat eine Maximalgeschwindigkeit,ein Fahrzeug kann beschleunigen,ein Fahrzeug kann Bremsen usw. usw..... All diese Eigenschaften werden in einer Klasse zusammengefasst. Eine Klasse besteht aus Attributen(Variablen) und Methoden die den Zustand der Instanz der Klasse(Objekt) verändern. 1.Vorteil Durch Vererbung können die Eigenschaften der Basisklasse spezialisiert werden ohne redunanten Code zu erzeugen.So könnte man zum Beispiel von der Klasse Fahrzeug eine Klasse Auto ableiten,und eine Klasse Mondfahrzeug die alle Eigenschaften der Basisklasse haben aber auf eine bestimmte Art spezieller sind.(Stichwort:Wiederverwendung) 2.Vorteil Im weiteren Programmablauf kann man "Anweisungen"(genau genommen schickt man einem Objekt eine Nachricht) benutzen die der menschlichen Denkweise wesentlich näher kommen,z.B. ist eine Anweisung meinAuto.beschleunigen() selbsterklärend. 3.Vorteil Mit Klassen und deren Instanzen kann man allerlei tolle dynamische Sachen machen. Nehmen wir zum Beispiel an du hast einen riesen Fuhrpark(von Motorraedern über Autos bis hin zu Mondfahrzeugen),dann ist durch die Vererbung bei allen Objekten sichergestellt das sie gewisse Eigenschaften haben die in der Basisklasse(im Beispiel Fahrzeug) vorhanden sind. Ein Objekt einer Unterklasse ist auch immer ein Objekt seiner Oberklasse(ein Auto ist ein Fahrzeug,ein Mondfahrzeug ist ein Fahrzeug)! Nehmen wir also an in der Basisklasse Fahrzeug gibt es eine Methode GewichtAnzeigen().Dann kannst du für alle Objekte,von Klassen die von Fahrzeug abgeleitet sind, diese Methode aufrufen,egal ob es ein Auto oder ein Mondfahrzeug ist.Damit spart man sich Fallunterscheidungen die bei vielen Typen sehr umfangreich sind und bei jedem neuen Typ ergänzt werden müssten.
Das ganze hier ist nur ein Fitzelscheiss von dem was es so alles über Klassen,Vererbung usw. zu wissen gibt und gleich melden sich bestimmt die Leute"Dieses und jenes fehlt!" aber das ist mir Schwanz,das hier ist wirklich eine Miniminimaleinführung in die OOP!
MfG Spacelord -- .....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes. |