Hola Fede! Ya estás al final del camino, al menos de este curso. Pero lo que es java todavía tienes todo el camino que quieras por delante
![Sonrisa :)](https://aprenderaprogramar.com/foros/Smileys/default/smiley.gif)
El código del método toString de la clase Persona me pareció raro cuando vi String estadoCivil = " "; pero luego comprendí por qué lo habías hecho ¡buen truco!
Debes mejorar una cosa a nivel de conceptos.
public void getCamaraEnQueTrabaja () {
System.out.println ("Diputados");
}
No es un método bien definido. El prefijo get se usa para indicar que el método devuelve algo. Lo correcto hubiera sido
public String getCamaraEnQueTrabaja () {
return "Diputados";
}
Los métodos no deben encargarse de mostrar cosas por pantalla (excepto métodos específicamente preparados para ello como mostrarInformacion o imprimirInformacion)
En la clase NominaLegisladores tienes que mejorar este código
public void muestraContenido () {
for (Legislador tmp: listaLegisladores) {
System.out.println (tmp.toString());
String tmpStr = "";
if (tmp instanceof Diputado) {
tmpStr = "Diputados";
} else {
tmpStr = "Senadores";
}
System.out.println ("Este Legislador trabaja en la Cámara de " + tmpStr + "\n");
}
}
Fíjate cómo puedes dejarlo, ves que hay código que no era necesario:
public void muestraContenido () {
for (Legislador tmp: listaLegisladores) {
System.out.println (tmp.toString());
System.out.print ("Este Legislador trabaja en la Cámara de ");
tmp.getCamaraEnQueTrabaja();
}
}
Realmente era mejor que el método devolviera un String y así tendríamos
public void muestraContenido () {
for (Legislador tmp: listaLegisladores) {
System.out.println (tmp.toString());
System.out.print ("Este Legislador trabaja en la Cámara de "+tmp.getCamaraEnQueTrabaja());
}
}
Lo anterior es interesante porque vemos cómo al llamar a un método se aplica el método de una clase u otra según el polimorfismo, eso nos ahorra tener que estar haciendo comprobaciones (aunque algunas veces sí tendremos que hacer comprobaciones).
Corrige esas pequeñas cosas y todo bien
Salu2