sintassi
class nome_nuova-classe (nome_classe_origine):
costruttore
si deve dichiarare di nuovo il costruttore completo
def __init__(self,parametro1,parametro2,parametro3...): definizione del costruttore con tutti i parametri richiesti quelli della classe origine + i nuovisuper().__init__(parametro1,parametro2,...) per non dover settare le variabili di nuovo dei parametri della classe di origine é possibile usare il comando super()
self.variabile3 = parametro3 setto variabile per il nuovo parametro
metodi
si dichiarano nuovi eventuali metodi o stessi metodi della classe originale con possibilità anche di utilizzare il return originale super()
def nuovo_metodo...
return ....
def metodo_originale modiifca del metodo originale...
return super().metodo_originale() é possibile ritornare il valore del metodo originale
esempio:
class Veicolo: classe origine
def __init__(self,marca,modello,colore,prezzo):self.marca = marca
self.modello = modello
self.colore = colore
self.prezzo = prezzo
def dati(self):variabile = "la mia auto é una {} tipo {} di colore {}".format(self.marca,self.modello,self.colore)
return variabile
def costa(self):variabile = "la mia auto é una {} costa {}".format(self.marca,self.prezzo)
return variabile
def __init__(self,marca,modello,colore,prezzo,cilindrata):super().__init__(marca,modello,colore,prezzo) recupero delle variabili ereditate per non doverle ridichiarare
self.cilindrata = cilindrata dichiaro nuovo parametro
def dati(self): modifica del metodo orginalevariabile = " cilindrata {}".format(self.cilindrata) nuovo testo da aggiungere
return super().dati() + variabile utilizzo il metodo originale e aggiungo il nuovo testo