Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [JAVA] Dove metto questi oggetti ?

    Buon giorno a tutti,
    ho creato una classe Persona che estende varie classi Studente, Operaio, ecc.....
    Mi servirebbe una struttura dati dinamica, in grado di immagazzinare questi oggetti, serve perdere la propria natura.
    Credo che dovrei usare qualche Colleciotn.

    Grazie in anticipo x l'aiuto

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    18
    ma quante classi estendi???????????

    io so che java ti permette di estendere (ereditare) soltanto una classe!!!!


    cmq puoi memeorizzare le informazioni in una Collection,Vecor, un file, un file xml dipende dall'uso che ti serve

  3. #3
    Allora ho 12 classi che estendono tutte da Persona,il mio problema è che quando vado a tirarle fuori dalla Collection,
    mi ritornano come Object o al massimo come Persona, con un casting, c'è qualcosa x fare ritornare al loro stato originario.
    Ad esempio ho memorizzato un oggetto di tipo Studente, quando vado a tirarlo fuori dalla Collection riesco a farlo diventare di nuovo uno Studente.
    Grazie

  4. #4
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    premetto che non ci ho capito un razzo
    Object obj = ...
    if (obj instanceof Operaio) {
    Operaio op = (Operaio)obj;
    } else if (obj instanceof Impiegato)
    ....

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    18
    puoi provare a crearti una classe astratta o un interfaccia che abbia tutti i metodi in comune di tutte le classi a tali classi fai implementare tale (classe astratta o interfaccia) e non dovrai più fare il cast quando prendi tale elemento così sfrutti il polimorfismo di java

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 © 2024 vBulletin Solutions, Inc. All rights reserved.