# Definition einer Klasse PKW class PKW: # Attribute der Klasse bezeichnung="" leistung=0 farbe="" geschwindigkeit=0 sitzplaetze=0 # Methoden der Klasse def __init__(self, bezeichnung, leistung, farbe, geschwindigkeit, sitzplaetze): # Konstruktor self.bezeichnung = bezeichnung self.leistung = leistung self.farbe = farbe self.geschwindigkeit = geschwindigkeit self.sitzplaetze def geschwindigkeitAendern(self, wert): self.geschwindigkeit += wert return self.geschwindigkeit def lackieren(self, farbe): self.farbe = farbe def ausgabe(self): print("PKW") print("Bezeichnung:",self.bezeichnung) print("Leistung:", self.leistung,"PS") print("Farbe:", self.farbe) print("Geschwindigkeit:", self.geschwindigkeit,"km/h") print("Sitzplätze",self.sitzplaetze) # Definition der abgeleiteten Klassen class VerbrennerPKW(PKW): # zusätzliches Attribut der Klasse tankinhalt = 0 def __init__(self, bezeichnung, leistung, farbe, geschwindigkeit, sitzplaetze, tankinhalt): # Konstruktor # zunächst wird er Konstruktor der Elternklasse aufgerufen PKW.__init__(self, bezeichnung, leistung, farbe, geschwindigkeit, sitzplaetze) # dann wird noch das letzte Attribut zugewiesen self.tankinhalt=tankinhalt def ausgabe(self): PKW.ausgabe(self) print("Tankinhalt:",self.tankinhalt,"l") def tanken(self,wert): self.tankinhalt += wert class ElektroPKW(PKW): # zusätzliches Attribut der Klasse ladezustand = 0 def __init__(self, bezeichnung, leistung, farbe, geschwindigkeit, sitzplaetze, ladezustand): # Konstruktor # zunächst wird er Konstruktor der Elternklasse aufgerufen PKW.__init__(self, bezeichnung, leistung, farbe, geschwindigkeit, sitzplaetze) # dann wird noch das letzte Attribut zugewiesen self.ladezustand=ladezustand def ausgabe(self): PKW.ausgabe(self) print("Ladezustand:",self.ladezustand,"%") def laden(self,ladezustand): self.ladezustand += wert # Hauptprogramm # Instanzen der Klasse Verbrenner-PKW wird erzeugt ford = VerbrennerPKW("Ford Focus",150,"weiß",30, 5, 50) tesla = ElektroPKW("Tesla Roadster",306,"blau",0, 2, 100) # Für die Objekte wird die Methode ausgabe() ausgeführt ford.ausgabe() print() tesla.ausgabe()