Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Aggregazione in java

  1. #1

    Aggregazione in java

    Esempio di aggregazione in java

    Deve rappresentare un lotto di prodotti, quindi ho considerato la classe lotto e la classe prodotto.
    La classe lotto ha una lista di prodotti, ma cosa scrivere nel costruttore della classe lotto per costruire questa lista di prodotti o usare un metto addProdotto in Lotto?


    codice:
    class Prodotto { 	
                private int codProdotto; 	
                private String descrizione; 	
                private long prezzo;  	
                
                public Prodotto(int cod, String descr, long p){
     		codProdotto = cod;
     		descrizione = descr;
     		prezzo = p;
     	} 
     }  
    
     class Lotto {
     	private String desc; 
    	private int codLotto;
     	private List<Prodotto> lista;
      	public Lotto(String desc, int codLotto) { 
    		this.desc = desc;
     		this.codLotto = codLotto;
     		this.lista = null; 	
           }
     }

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,327
    Non ho capito il problema... così non ti va bene?

    codice:
     class Lotto {
     	private String desc; 
    	private int codLotto;
     	private List<Prodotto> lista;
      	public Lotto(String desc, int codLotto) { 
    		this.desc = desc;
     		this.codLotto = codLotto;
     		this.lista = new ArrayList<Prodotto>();   // Creo una lista vuota
           }
     }
    Oppure potresti mantenere la tua soluzione (lista nulla) e posizionare la sua costruzione al primo inserimento:

    codice:
    public void addProdotto(Prodotto p) {
       if (lista == null) lista = new ArrayList<Prodotto>();
       lista.add( p );
    }
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Grazie, pensavo di aver fatto male.

    volevo chiederti una cosa, visto che io ho la necessità di modificare la descrizione del lotto e il prezzo ad ogni inserimento di un prodotto, avevo dei dubbi sul fatto che certe operazioni sui tipi primitivi siano possibili o meno, penso in particolare al passaggio di prametri che in java dovrebbe essere per valore.

    Cioè la mia soluzione sarebbe questa, cosa ne pensi

    codice:
    public void addProdotto(Prodotto p)
        {
            this.listaArticoli.add(p);
            setDescrizione(p);
            setPrezzo(p);
        } 
    
    
    public void setPrezzo(Prodotto p)
    {
     
           this.prezzo = this.prezzo + p.getPrezzo();
    }
    
    public void setDescrizione(Prodotto p)
        {
            this.descrizione = this.descrizione +" " + p.getDescrizione()+" ";
        }
    La stessa cosa vale anche se devo settare il fatto che il lotto venga venduto. Posso fare una cosa del genere

    codice:
    public void setVenduto()
    {    
       this.venduto = true;
    }
    Grazie speriamo che qualcuono mi possa rispondere...

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.