L’ereditarietà è uno dei meccanismi fondamentali della programmazione orientata agli oggetti, che consente di ridurre la ridondanza del codice permettendo alle classi figlie di ereditare campi e i metodi della classe madre.

Il livello di ereditarietà dei membri (campi e metodi) può essere controllato attraverso i modificatori di accessibilità.

Object (extends implicito)

In Java tutte le classi estendono implicitamente la classe Object. Ciò significa che ogni classe, anche se non è stata definita esplicitamente come una sottoclasse di Object, eredita comunque le proprietà e i metodi di Object

I metodi di object più comunemente utilizzato sono;

  • getClass() restituisce una rappresentazione stringa dell’oggetto
  • toString() restituisce la classe dell’oggetto
  • hashCode() restituisce un codice hash per l’oggetto
  • equals() confronta l’oggetto con un altro oggetto per determinare se sono uguali

Ovveride

Questi metodi possono essere sovrascritti dalle classi figlie per fornire un comportamento personalizzato, ecco qui alcuni re-implementazioni comuni di questi metodi: