Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Polimorfismo per dati

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    480

    Polimorfismo per dati

    Ciao a tutti,
    sto studiando il polimorfismo ed ho capito il polimorfismo per metodi (overload e override), che permette di utilizzare lo stesso nome per metodi differenti.

    Non riesco però a capire per bene il polimorfismo per dati.
    Sul mio manuale definisce così: "permette essenzialmente di poter assegnare un reference di una superclasse ad un'istanza di una sottoclasse" ma non capsico bene cosa intende.

    Potete farmi degli esempi in merito ?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da roquentin Visualizza il messaggio
    sto studiando il polimorfismo ed ho capito il polimorfismo per metodi (overload e override), che permette di utilizzare lo stesso nome per metodi differenti.
    Il "vero" polimorfismo è solo quello che si ottiene sfruttando la ereditarietà e anche il concetto di override (ridefinizione) dei metodi.
    Il overload è anche una specie di "polimorfismo" ma solo nel senso letterale del termine: ovvero più-forme. Un metodo che ha più forme differenti avendo comunque lo stesso nome.

    Quote Originariamente inviata da roquentin Visualizza il messaggio
    Non riesco però a capire per bene il polimorfismo per dati.
    Che centrano i dati? Mah ....

    Quote Originariamente inviata da roquentin Visualizza il messaggio
    Sul mio manuale definisce così: "permette essenzialmente di poter assegnare un reference di una superclasse ad un'istanza di una sottoclasse" ma non capsico bene cosa intende.
    Nemmeno io .... nel senso che detto così non mi pare abbia poi granché senso. (ma prendere libri validi .. no?)

    Forse intende un "up-cast" (quello che nel JLS è detto "widening reference conversion") o un "down-cast" (nel JLS detto "narrowing reference conversion")?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    480
    Sto utlizzando "manuale di java 8" - Claudio De Sio Cesari, me lo hanno consigliato e l'ho preso pure nuovo.

    andibin, quindi il polimorfismo utilizzato maggiormanete è quello dell'override e overload ?

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da roquentin Visualizza il messaggio
    quindi il polimorfismo utilizzato maggiormanete è quello dell'override e overload ?
    Override e overload sono entrambi, ovviamente, molto utilizzati. Ma nella programmazione ad oggetti sono la ereditarietà e l'override i due concetti "chiave" che permettono di riutilizzare ed estendere il comportamento di altre classi. Una Automobile è-un Veicolo che "sa" fare qualcosa di più o in maniera leggermente diversa, più specifica. Questa è appunto la ereditarietà e la eventuale applicazione del override.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    480
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Override e overload sono entrambi, ovviamente, molto utilizzati. Ma nella programmazione ad oggetti sono la ereditarietà e l'override i due concetti "chiave" che permettono di riutilizzare ed estendere il comportamento di altre classi. Una Automobile è-un Veicolo che "sa" fare qualcosa di più o in maniera leggermente diversa, più specifica. Questa è appunto la ereditarietà e la eventuale applicazione del override.
    Ok chiarissimo
    Grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.