MI PREGUNTA: ¿Porque cuando relleno el HashMap de Usuarios y Monitores , no me rellena los campos de id nombre apellidos fecha de nacimiento? ¿ Porque cuando imprimo el hashmap de personas me imprime el paquete donde se encuentra ?
ejemplo:
{1=es.uvigo.pii.instalacionesdeportivas.main.Persona@6d06d69c, 2=es.uvigo.pii.instalacionesdeportivas.main.Persona@7852e922, 3=es.uvigo.pii.instalacionesdeportivas.main.Persona@15db9742}
Código
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileReader; import java.util.HashMap; import es.uvigo.pii.instalacionesdeportivas.main.Persona; public class FicheroPersonas { // TODO Auto-generated method stub HashMap<Integer,Persona> Personas= new HashMap<Integer,Persona>(); HashMap<Integer,Usuario> Usuarios= new HashMap<Integer,Usuario>(); HashMap<Integer,Monitor> Monitores= new HashMap<Integer,Monitor>(); int i=0; int idsOcupados=0; BufferedWriter bw; try { // Apertura del fichero y creacion de BufferedReader para poder // hacer una lectura comoda (disponer del metodo readLine()). // Lectura del fichero String linea; while ((linea = br.readLine()) != null) { if(linea.startsWith("*")!=true){ datos[i]=linea; // guardo la linea i++; } if(linea.startsWith("*")==true){ if(datos[1].equalsIgnoreCase("usuario")){ } if(datos[1].equalsIgnoreCase("monitor")){ } i=0; idsOcupados ++; } } if(datos[1].equalsIgnoreCase("usuario")){ idsOcupados ++; } if(datos[1].equalsIgnoreCase("monitor")){ idsOcupados ++; } e.printStackTrace(); } finally { // En el finally cerramos el fichero, para asegurarnos // que se cierra tanto si todo va bien como si salta // una excepcion. try { if (null != fr) { fr.close(); } e2.printStackTrace(); } } } } public class Usuario extends Persona{ public int idUsuario; public float saldo; super(idUsuario,nombre,apellidos,fechaNacimiento); this.fechaAlta=fechaAlta; this.actividadesActuales=actividadesActuales; this.saldo=saldo; this.actividadesPrevias=actividadesPrevias; } //GETTERS & SETTERS @Override return "Usuario [nombre=" + nombre + ", apellido=" + apellidos+", fechaNacimiento=" + fechaNacimiento + ", fechaAlta=" + fechaAlta + ", actividadesPrevias=" + actividadesPrevias + ", saldo=" + saldo + ", actividadesActuales=" + actividadesActuales + "]"; } return fechaAlta; } this.fechaAlta = fechaAlta; } return actividadesPrevias; } this.actividadesPrevias = actividadesPrevias; } public float getSaldo() { return saldo; } public void setSaldo(float saldo) { this.saldo = saldo; } return actividadesActuales; } this.actividadesActuales = actividadesActuales; } } public class Monitor extends Persona{ public int idMonitor; public int horasAsignables; super(idMonitor,nombre,apellidos,fechaNacimiento); this.horasAsignables=horasAsignables; this.GruposImpartidos=GruposImpartidos; } @Override return "Monitor [nombre=" + nombre + ", apellidos=" + apellidos + ", fechaNacimiento=" + fechaNacimiento + ", horasAsignables=" + horasAsignables + ", GruposImpartidos=" + GruposImpartidos + "]"; } public int getHorasAsignables() { return horasAsignables; } public void setHorasAsignables(int horasAsignables) { this.horasAsignables = horasAsignables; } return GruposImpartidos; } GruposImpartidos = gruposImpartidos; } } public class Persona { public int idPersona; super(); this.idPersona=idPersona; this.nombre=nombre; this.apellidos=apellidos; this.fechaNacimiento=fechaNacimiento; } //GETTERS & SETTERS public int getIdPersona() { return idPersona; } public void setIdPersona(int idPersona) { this.idPersona = idPersona; } return nombre; } this.nombre = nombre; } return apellidos; } this.apellidos = apellidos; } return fechaNacimiento; } this.fechaNacimiento = fechaNacimiento; } }