Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: aleexx1724 en 06 de Diciembre 2014, 14:17

Título: (CU00639B) clase Bombero con constructor que recibe parámetros
Publicado por: aleexx1724 en 06 de Diciembre 2014, 14:17
Saludos atod@sssss este es mi codigo del ejercicio (CU00639B)


Código: [Seleccionar]
public class Bombero{
 
    private String nombre;
    private String apellidos;
    private int edad;
    private boolean casado;
    private boolean especialista;
   
    public Bombero (String valorNombre,String valorApellidos,int valorEdad){
    nombre=valorNombre;
    apellidos=valorApellidos;
    edad=valorEdad;
    casado=false;
    especialista=false;
    }
   
    public void setCasado(boolean valorCasado){
    casado=valorCasado;
    }
   
    public void setEspecialista(boolean valorEspecialista){
    especialista=valorEspecialista;
    }
   
    public boolean getCasado(){return casado;}
    public boolean getEspecialista(){return especialista;}
   
}
Título: Re:(CU00639B)
Publicado por: toni_apr en 06 de Diciembre 2014, 16:14
Hola Alex

Este ejercicio aunque es funcional, no está perfecto.

Tu constructor solo tiene 3 parámetros en lugar de un parámetro para cada atributo.
Además solo aportas los setters y getters para los atributos en que el constructor no recibió parámetros.

Esto es lo que se pedía en la entrega

Citar
Define un constructor que reciba los parámetros necesarios para la inicialización y los métodos para poder establecer y obtener los valores de los atributos.

Alex, leí en un post anterior que tuviste un problema con el ordenador y que de resultas repetías los ejercicios de nuevo.
Realmente cuando te pasa eso es como si te quedaras cojo o manco.
Pero ví que te sobrepusiste y emprendiste el curso de nuevo.
Bien por tí.

A mi parecer no hacía falta que repitieras los ejercicios que ya cumpliste con la otra computadora. Es trabajo hecho y sabido. Pero si quieres repetirlos, bien.

Solo quiero que veas como comprobé yo, que algunos ejercicios de la primera etapa estaban mejor resueltos que los de ahora.
No se si es que quieres hacer variaciones sobre algo que ya conoces, pero esas variaciones son de menor calidad que las primeras.

Te sugiero que si has de repetir un ejercicio, sea de los que no te salieron bien del todo. Y que al igual que puedes aprender con el código de otros usuarios del foro, tu además tienes tus propios ejercicios para comparar y mejorar su composición si cabe.

Saludos.
Título: Re:(CU00639B)
Publicado por: aleexx1724 en 06 de Diciembre 2014, 17:10
hola toni_apr gracias por ayudarme  este es la editacion de mi codigo .
lo de la compu que semedescompuso tuve que empezar el curso porque no sabia donde iva  y puesto que baje denuebo bluej no tenia ningun ejercicio y el curso aveces tedice que modifiques un metodo dela clase pasada o algo asi saludos y muchas graciasss.
AAAA!!!! y no te olvides de checar mi codigo cualquier cosa mala es bueno saverlo para ser mejor programador saludos 


Código: [Seleccionar]
public class Bombero{
 
    private String nombre;
    private String apellidos;
    private int edad;
    private boolean casado;
    private boolean especialista;
   
    public Bombero (String valorNombre,String valorApellidos,int valorEdad,boolean valorCasado,boolean valorEspecialista){
    nombre=valorNombre;
    apellidos=valorApellidos;
    edad=valorEdad;
    casado=valorCasado;
    especialista=valorEspecialista;
    }
   
    public String getNombre(){return nombre;}
    public String getApellidos(){return apellidos;}
    public int getEdad(){return edad;}
    public boolean getCasado(){return casado;}
    public boolean getEspecialista(){return especialista;}
   
   
}
Título: Re:(CU00639B) clase Bombero con constructor que recibe parámetros
Publicado por: toni_apr en 08 de Diciembre 2014, 12:30
Hola Alex

No está bien. No has puesto los setters de los atributos.

¿Puedes darme una razón para no ponerlos? En el enunciado del ejercicio se piden, y yo te lo recordé en el post anterior.

Saludos
Título: Re:(CU00639B) clase Bombero con constructor que recibe parámetros
Publicado por: aleexx1724 en 08 de Diciembre 2014, 12:47
hola toni_apr no los puse porque pense que el constructor es lo que asia,
que tomaba el valor de los setters....

entonces los debo de poner tambien hehhehe

Código: [Seleccionar]
public class Bombero{
 
    private String nombre;
    private String apellidos;
    private int edad;
    private boolean casado;
    private boolean especialista;
   
    public Bombero (String valorNombre,String valorApellidos,int valorEdad,boolean valorCasado,boolean valorEspecialista){
    nombre=valorNombre;
    apellidos=valorApellidos;
    edad=valorEdad;
    casado=valorCasado;
    especialista=valorEspecialista;
    }
    //setters
    public void setNombre(String valorNombre){nombre=valorNombre;}
    public void setApellidos(String valorApellidos){apellidos=valorApellidos;}
    public void setEdad(int valorEdad){edad=valorEdad;}
    public void setCasado(boolean valorCasado){casado=valorCasado;}
    public void setEspecialista(boolean valorEspecialista){especialista=valorEspecialista;}
    //getters
    public String getNombre(){return nombre;}
    public String getApellidos(){return apellidos;}
    public int getEdad(){return edad;}
    public boolean getCasado(){return casado;}
    public boolean getEspecialista(){return especialista;}
   
   
}
Título: Re:(CU00639B) clase Bombero con constructor que recibe parámetros
Publicado por: toni_apr en 08 de Diciembre 2014, 23:11
Si Alex, ahora si.

Si tienes tiempo, voy a enrollarme sobre el hecho de crear los setters y getters de una clase.

Igual lo has oido alguna vez.
En los comienzos del aprendizaje, es posible que no entiendas el porque de algunas cosas, como crear esos métodos que te pedimos y tu no utilizas para nada.
Pero te puedo asegurar que se usan y que son tan útiles como tener una llave para cada una de las cerraduras que te encuentres en tu camino.

Una muestra de la importancia de que te hablo, es que  BlueJ y cualquier otro IDE para java incorporan un acceso rápido a los métodos de una clase incluidos setters y getters.

Para ello en cualquier lugar de la clase escribe la siguiente línea:
this.
y con el cursor después del punto haz la pulsación [CTRL + espacio], como ya sabrás esto es pulsar la tecla control y sin soltarla pulsar la tecla del espacio en blanco y soltar.
Si sale bien, aparecerá una ventana con todos los métodos disponibles para la clase actual incluidos sus setters y getters.

Nota: La palabra clave this se explica más adelante en el curso.

Eso es todo. Saludos