Parlando di codice scritto, quale è la differenza fra queste 3 relazioni uml?
Se io ad esempio ho questo UML
fb.jpg
vanno bene le classi implementate così?
Classe Persona
Classe Indirizzocodice:/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package progetto.visioneCompleta; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Persona { private int id; private String nomePersona; private String cognomePersona; private Indirizzo indirizzo; private List<Auto> auto; public Persona() { } public Persona(String nomePersona, String cognomePersona, Indirizzo indirizzo) { this.nomePersona = nomePersona; this.cognomePersona = cognomePersona; this.indirizzo = indirizzo; auto = new ArrayList<Auto>(); } public void addAuto(Auto auto){ this.auto.add(auto); } public void getAuto(){ Iterator it = auto.iterator(); while(it.hasNext()){ Auto auto = (Auto) it.next(); System.out.println(auto.toString()); } } public int getId() { return id; } private void setId(int id) { this.id = id; } public String getNomePersona() { return nomePersona; } public void setNomePersona(String nomePersona) { this.nomePersona = nomePersona; } public String getCognomePersona() { return cognomePersona; } public void setCognomePersona(String cognomePersona) { this.cognomePersona = cognomePersona; } public Indirizzo getIndirizzo() { return indirizzo; } public void setIndirizzo(Indirizzo indirizzo) { this.indirizzo = indirizzo; } }
Classe Autocodice:/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package progetto.visioneCompleta; /** * * @author phate */ public class Indirizzo { private int cap; private String via; private String citta; public Indirizzo() { } public Indirizzo(int cap, String via, String citta) { this.cap = cap; this.via = via; this.citta = citta; } public int getCap() { return cap; } public void setCap(int cap) { this.cap = cap; } public String getVia() { return via; } public void setVia(String via) { this.via = via; } public String getCitta() { return citta; } public void setCitta(String citta) { this.citta = citta; } }
Grazie mille a tutticodice:/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package progetto.visioneCompleta; public class Auto { private String marca; public Auto() { } public Auto(String marca) { this.marca = marca; } public String getMarca() { return marca; } public void setMarca(String marca) { this.marca = marca; } @Override public String toString() { return "Auto{" + "marca=" + marca + '}'; } }

Rispondi quotando