La programmazione orientata agli oggetti (OOP) ha quattro caratteristiche essenziali: incapsulamento, ereditarietà, polimorfismo e astrazione. L'incapsulamento è il processo di associazione di dati e codice in una singola unità. L'ereditarietà è il processo per ottenere i tratti di una classe da un'altra. Il polimorfismo è la capacità di rappresentare entità in varie forme. L'astrazione è il processo di nascondere i dettagli di implementazione esponendo solo la funzionalità.
Spiegare le quattro caratteristiche essenziali della programmazione orientata agli oggetti.