Ereditarietà e classi in Python

Sommario
L'ereditarietà è uno dei modi per promuovere di non dover lavorare troppo, aiutandoci a evitare di dover codificare lo stesso codice più volte, forse possiamo pensare di poterlo fare con le funzioni, ma cosa succede quando abbiamo una classe e vogliamo per farne uno molto simile che cambia solo uno o due aspetti, è qui che entra in gioco questo.
L'ereditarietà non è altro che passare gli attributi ei metodi di una classe superiore e astratta a un'altra, sia che si voglia renderla più specifica o molto più astratta, ampliandone lo spettro d'azione.
Immaginiamo per un momento di dover creare una classe rettangolo, questo è qualcosa di abbastanza specifico poiché il rettangolo è una forma geometrica definita, ma nonostante ciò ha caratteristiche in comune con altre figure, e se invece di creare una classe specifica facessimo una La classe Figures, che include gli aspetti e gli attributi comuni e quindi la nostra classe rettangolo eredita quegli attributi e quindi dobbiamo solo aggiungere i metodi e gli attributi specifici.
Una classe non è altro che una raccolta di attributi e metodi definiti in modo astratto, su cui possiamo costruire oggetti. Possiamo vedere un esempio nella vita reale, se vediamo un uccello attraverso la finestra, dobbiamo sapere che appartiene alla classe degli uccelli, ma se questo uccello è un'aquila allora diciamo che è una delle aquile della sottoclasse, che a sua volta appartiene alla classe degli uccelli e quindi possiamo continuare a specificare da un livello astratto più alto (uccello) a un livello più specifico (aquila), e gli attributi dell'aquila sono ciò che la definiscono e la differenziano dagli altri uccelli.
Vediamo un piccolo esempio di come costruire le nostre classi in Python.

Come possiamo vedere, definiamo una classe persona e il suo attributo principale è il nome, creiamo diversi metodi per assegnare e consultare il nome e un metodo di saluto, che ci permette di far dire all'oggetto la sua identificazione.
Vediamo come tutto questo funzionerebbe nel contesto di un semplice programma.

INGRANDIRE

Se osserviamo l'assegnazione, foo = Person(), ciò che stiamo realmente facendo è creare un oggetto di tipo Person(), quindi ora foo avrà gli attributi e l'accesso ai metodi della classe Person.
Poi vediamo che chiamiamo il metodo setName() per due oggetti diversi, qui stiamo già specificando ognuno con attributi diversi, ma che appartengono alla stessa classe, qualcosa di simile all'esempio dell'aquila che abbiamo visto qualche paragrafo fa.
Alla fine, quando si chiama il metodo greet(), ogni oggetto mostra la propria differenza nonostante parta dalla stessa origine astratta. In questo modo non abbiamo dovuto scrivere un codice di definizione per ogni oggetto ma semplicemente riutilizzare il codice astratto della classe Person.
Con questo finiamo questo tutorial, è piuttosto una teoria che dobbiamo continuare a praticare e approfondire poiché questa è la base di ciò che è la programmazione orientata agli oggetti che ci permetterà di sfruttare molte delle funzionalità di Pitone.

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave