Classi, ereditarietà e concetti della programmazione orientata agli oggetti in Python, spiegati con un breve esempio ciascuno.
40 cards · basic cards · AI-written, checked twice. Edit anything.
- Che cos'è una classe in Python?
Show answer
Un modello o schema per creare oggetti con attributi e metodi in comune
- Che rapporto c'è tra un oggetto e una classe?
Show answer
Un oggetto è un'istanza concreta di una classe e contiene dati reali
- Quale parola chiave di Python si usa per definire una classe?
Show answer
class
- Che cos'è il metodo __init__ in una classe?
Show answer
Il costruttore, chiamato automaticamente quando viene creata una nuova istanza
- Che cosa rappresenta il parametro self in un metodo?
Show answer
Un riferimento all'istanza corrente della classe
- Che cos'è un attributo di istanza?
Show answer
Un attributo che appartiene a un singolo oggetto e può essere diverso da un'istanza all'altra
- Che cos'è un attributo di classe?
Show answer
Un attributo definito nel corpo della classe e condiviso da tutte le istanze
- Che cos'è l'ereditarietà nella programmazione orientata agli oggetti?
Show answer
Un meccanismo in cui una classe figlia acquisisce gli attributi e i metodi di una classe genitore
- Come si crea una classe figlia che eredita da una classe genitore?
Show answer
class ChildClass(ParentClass):
- Che cos'è l'overriding di un metodo?
Show answer
Ridefinire nella classe figlia un metodo della classe genitore con un comportamento diverso
- Che cosa fa super()?
Show answer
Chiama un metodo della classe genitore dall'interno della classe figlia
- Che cos'è l'incapsulamento nella programmazione orientata agli oggetti?
Show answer
Racchiudere insieme dati e metodi e nascondere i dettagli interni dell'implementazione
- Che cosa significa un trattino basso iniziale davanti al nome di un attributo?
Show answer
Per convenzione, indica che l'attributo è pensato come privato o interno
- Che cosa fa un doppio trattino basso iniziale davanti al nome di un attributo?
Show answer
Attiva il name mangling, che rende l'attributo più difficile da raggiungere dall'esterno della classe
- Che cosa permette di fare il decoratore @property?
Show answer
Definire un metodo che si può usare come un attributo, con la notazione a punto