Ereditarietà

  • Java non prevede l'ereditarietà multipla
  • Per implementare caratteristiche comuni a più classi (non un'ereditarietà multipla, ma qualcosa di simile) si useranno le interfacce, di cui parleremo in un'altra lezione
  • Per indicare che una classe deriva da un'altra si usa la parola chiave extends
  • Ogni classe ha una superclasse
  • Non si può indicare la classe di visibilità per la superclasse: sarà sempre pubblica
  • Se una classe non indica alcuna superclasse, la sua superclasse è la classe di sistema Object
  • In un solo sorgente possono essere incluse più classi, comunque ogni classe produrrà un diverso file compilato ".class"
  • L'ordine in cui vengono dichiarate le classi è irrilevante
  • Come sempre, una classe derivata può accedere ai metodi ed agli attirbuti delle superclassi, in base alla loro visibilità e può ridefinire dei metodi
  • Per accedere ai membri della superclasse (se ridefiniti), si usa l'oggetto super , che si riferisce sempre al nostro oggetto (come this), ma nel contesto della superclasse

© Ing. Stefano Salvi - All rights reserved