Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Esercizio scolastico

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da roxi.g Visualizza il messaggio
    Ha creato una classe Java vagoni caratterizzata da un
    Codice vagone e un anno di costruzione.
    Poi ha creato una classe vagone passeggeri con in più un numero di posti a sedere e un' altra classe vagone merci con un peso totale merce.
    Purtroppo detto così non è chiarissimo. Si capisce che ci sono 3 classi ma non se (e come) sono in relazione tra di loro.
    Se ci sono appunto 3 classi come Vagone, VagonePasseggeri e VagoneMerci, queste ultime due sono sottoclassi di Vagone??

    Perché così avrebbe pienamente senso. Un VagonePasseggeri è-un Vagone così come un VagoneMerci è-un Vagone.

    Se non è così .... sarebbe tutto da (ri)valutare.

    Quindi direi innanzitutto di chiarire meglio questa questione, magari mostrando il codice (tutto o parziale purché si capisca la struttura) di queste 3 classi.
    Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  2. #2
    Utente di HTML.it L'avatar di roxi.g
    Registrato dal
    Jul 2008
    Messaggi
    288
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Purtroppo detto così non è chiarissimo. Si capisce che ci sono 3 classi ma non se (e come) sono in relazione tra di loro.
    Se ci sono appunto 3 classi come Vagone, VagonePasseggeri e VagoneMerci, queste ultime due sono sottoclassi di Vagone??

    Perché così avrebbe pienamente senso. Un VagonePasseggeri è-un Vagone così come un VagoneMerci è-un Vagone.

    Se non è così .... sarebbe tutto da (ri)valutare.

    Quindi direi innanzitutto di chiarire meglio questa questione, magari mostrando il codice (tutto o parziale purché si capisca la struttura) di queste 3 classi.
    Ciao scusa non avevo specificato ma vagone passeggeri e merci sono sottoclassi di vagone
    Non riesco a postare codice, è sul PC e io sto scrivendo dal telefono.
    Posso dire se serve che dopo aver fatto la classe vagone per fare la classe vagone passeggeri e vagone merci ha utilizzato "extend" spero possa essere utile come jnformazione
    sostieni la ricerca - http://www.unverosorriso.it/ita/home.html

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da roxi.g Visualizza il messaggio
    Ciao scusa non avevo specificato ma vagone passeggeri e merci sono sottoclassi di vagone
    Posso dire se serve che dopo aver fatto la classe vagone per fare la classe vagone passeggeri e vagone merci ha utilizzato "extend" spero possa essere utile come jnformazione
    Chiarissimo, allora così HA senso. La classe "base" è quindi Vagone.

    La classe Treno quindi potrà avere, detto in generale, un elenco di oggetti visti come tipo Vagone. Potrebbe essere un array o meglio ancora una collezione (una lista ha senso).

    Qualcosa tipo:

    codice:
    public class Treno {
        private List<Vagone> vagoni;
    
        // ......altro
    }

    All'interno della classe ci potranno essere metodi es. public void aggiungiVagone(Vagone v)

    Notare che la lista è parametrizzata Vagone e anche il parametro di aggiungiVagone l'ho messo Vagone. Per effetto della ereditarietà/polimorfismo, posso passare ad aggiungiVagone qualunque oggetto che è-un Vagone, ad esempio un VagonePasseggeri. La gerarchia di classi con Vagone alla "base" serve proprio per essere sfruttata in questo modo!

    Treno deve "sapere" delle sottoclassi di Vagone? Di base, di per sé NO, potrebbe anche essere codificata solo in funzione del tipo Vagone (un getVagone(int indice) restituisce un Vagone, ecc...).
    Se ci sono necessità particolari e diverse, allora VANNO ben specificate, motivate e chiarite.
    Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

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