Mi correggo, è sbagliato!! Non avevo ben notato i due String. Qui devi passare "argomenti" (valori) al costruttore ... non dichiarare i parametri! Non fare questi erroracci.Originariamente inviata da el92
Il toString() in Genitore non sarebbe male o sbagliato in sé .... è che prima come l'avevi fatto non era assolutamente corretto (e nemmeno compilava).
Nel tuo ultimo codice, il
Iterator <Persona1> it=p.iterator();
è totalmente inutile, perché non lo stai usando. Il "for-each" for(Persona1 c : p) usa già implicitamente un Iterator di nascosto.
Iterable è stato introdotto proprio per poter essere il "target" del for-each in modo che qualunque oggetto che implementa Iterable possa essere usato con il for-each.
La concatenazione di c con la stringa fa invocare implicitamente il toString() su cOriginariamente inviata da el92