Python: Klassen: Unterschied zwischen den Versionen
Flinh1 (Diskussion | Beiträge) (→Vererbung) |
Flinh1 (Diskussion | Beiträge) (→Vererbung) |
||
Zeile 40: | Zeile 40: | ||
</nowiki> | </nowiki> | ||
Die Funktion ''super()'' weist Python an, die Funktion ''__init__'' der Elternklasse aufzurufen. | Die Funktion ''super()'' weist Python an, die Funktion ''__init__'' der Elternklasse aufzurufen. | ||
+ | |||
+ | ---- | ||
+ | |||
+ | == Instanzen als Attribute einer Klasse == | ||
+ | |||
+ | Die Instanz einer Klasse (hier: Klasse ''Batterie'') kann in einer anderen Klasse als Attribut dienen: | ||
+ | <nowiki> | ||
+ | class Auto: | ||
+ | def __init__(self, make, model, year): | ||
+ | self.batterie = Batterie() | ||
+ | </nowiki> | ||
---- | ---- | ||
[[Kategorie: Alle Seiten]] | [[Kategorie: Programmierung ]] | | [[Kategorie: Alle Seiten]] | [[Kategorie: Programmierung ]] | |
Version vom 16. Juli 2019, 19:05 Uhr
Inhaltsverzeichnis
Allgemeines
Beispiel für Klasse und ihre Instanziierung:
class Tiere: def bewegen(self): print("Ich bewege mich") def fressen(self): print("Ich fresse.") class Rind(Tiere): def __init__(self, flecken): self.kuhflecken = flecken def findeFutter(self): self.bewegen() print("Ich habe Futter gefunden!") self.fressen() elsa = Rind(20) print("Anzahl der Flecken:", elsa.kuhflecken) elsa.findeFutter()
Vererbung
Grundschema
class Elektroauto(Auto): def __init__(self, make, model, year): super().__init__(make, model,year)
Die Funktion super() weist Python an, die Funktion __init__ der Elternklasse aufzurufen.
Instanzen als Attribute einer Klasse
Die Instanz einer Klasse (hier: Klasse Batterie) kann in einer anderen Klasse als Attribut dienen:
class Auto: def __init__(self, make, model, year): self.batterie = Batterie()
| |