ciao alla fine ho risolto modificando tutto come dicevi tu e cancellando il metodo toString() dalla classe Genitore ed usando nel main il metodo iterator().
Da terminale mi stampa:codice:class Test{ public static void main(String[] args){ Genitore p=new Genitore("elena","rossi"); Genitore p1=new Genitore("alessio","rossini"); Persona1 g; g=p1; System.out.println(p.toString()); p.addFiglio(g); Iterator <Persona1> it=p.iterator(); for(Persona1 c:p){ System.out.println("suo figlio è: "+"\n"+c); } } }
il nome della persona è: elena
il cognome della persona è: rossi
suo figlio è:
il nome della persona è: alessio
il cognome della persona è: rossini
Perchè dopo la stringa "suo figlio è: " mi stampa ancora "il nome della persona e:....." ed "il cognome della persona è:",visto che alla variabile c di tipo Persona1 non ho invocato il metodo to String() della classe Persona1?![]()