[PYTHON] Klassenvererbung und Superfunktion

python


class Car(object):
    def __init__(self, model=None):
        self.model = model
    def run(self):
        print('run')

class ToyotaCar(Car):
    def run(self):
        print('run fast')

class TeslaCar(Car):
    def __init__(self, model='Model A', enable_auto_run=False):
        super().__init__(model)
        self.enable_auto_run = enable_auto_run
    def run(self):
        print('run very fast')
    def auto_run(self):
        print('auto run')

car = Car()
car.run()

print('############')

toyota_car = ToyotaCar('Lexus')
print(toyota_car.model)
toyota_car.run()

print('############')

tesla_car = TeslaCar('Model S')
print(tesla_car.model)
tesla_car.run()
tesla_car.auto_run()

Ausführungsergebnis


run
############
Lexus
run fast
############
Model S
run very fast
auto run

Der Konstruktor der TeslaCar-Klasse ist Ursprünglich

python


def __init__(self, model='S Model', enable_auto_run=False):
        self.model = model
        self.enable_auto_run = enable_auto_run

Ich bin im Begriff zu schreiben Da es die gleiche Verarbeitung wie der Konstruktor der Superklasse macht Es kann mit der Superfunktion geschrieben werden.

Recommended Posts

Klassenvererbung und Superfunktion
Vergleich von Klassenvererbung und Konstruktorbeschreibung
Probleme mit pseudo-privaten Python-Variablen und Klassenvererbung
Über Klasse und Instanz
Funktionen und Dekorateure höherer Ordnung
Methodenüberschreibung und super
[Python] Klassenvererbung, überschreiben
Klassen- und statische Methoden
Anonyme Funktion und Kartenfunktion
Verschiedene Klassenmethoden und statische Methoden
Python: Klassen- und Instanzvariablen
Python-Klassen- und Instanzvariablen
[python] super (), Vererbung, __init__ usw.
Python 3 Sortier- und Vergleichsfunktionen
Funktionen höherer Ordnung und Einschlussnotation in Python
Vermeiden Sie die Implementierung nutzloser Funktionen mit Vererbung
Ich werde die Klasse erben und überschreiben
[Hikari-Python] Kapitel 09-03 Klasse (Vererbung)
Python-Klassendefinitionen und Instanzbehandlung
Formeln und Funktionen (entsprechend aktualisiert)
Ich habe mich mit Überschreibungen der Klassenvererbung befasst.
Berechnung der selbst erstellten Klasse und der vorhandenen Klasse
Perl-Objekt und Python-Klasse Teil 1.
Verstehe die Regeln und konvexen Funktionen von Armijo
Tipps zum Ersetzen und Debuggen von Funktionen