Python: Klassen: Unterschied zwischen den Versionen
Flinh1 (Diskussion | Beiträge) (→Vererbung) |
Flinh1 (Diskussion | Beiträge) (→Instanzen als Attribute einer Klasse) |
||
| Zeile 51: | Zeile 51: | ||
self.batterie = Batterie() | self.batterie = Batterie() | ||
</nowiki> | </nowiki> | ||
| + | Die Methode einer Instanz von ''Auto'' könnte für die Batterie dann so lauten: | ||
| + | bmw1 = Auto() | ||
| + | bmw1.batterie.''methode()'' | ||
---- | ---- | ||
[[Kategorie: Alle Seiten]] | [[Kategorie: Programmierung ]] | | [[Kategorie: Alle Seiten]] | [[Kategorie: Programmierung ]] | | ||
Version vom 16. Juli 2019, 19:40 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()
Die Methode einer Instanz von Auto könnte für die Batterie dann so lauten:
bmw1 = Auto() bmw1.batterie.methode()
| |