Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: kerras en 02 de Noviembre 2015, 06:13

Título: Crear objetos con BlueJ e invocar sus métodos poo java ejercicio CU00632B
Publicado por: kerras en 02 de Noviembre 2015, 06:13
Aqui esta el siguiente , ya tengo algo de sueño , ustedes me dirán

Nota: mientras , hacia este post me doy cuenta que hay algo mal con los mensajes o eso creo .. ustedes corrijan me porfa , compilo perfecto . Buenas noches.

Código: [Seleccionar]
public class Medico {
    private String Nombre;
    private String Apellido;
    private int Edad;
    private boolean casado;
    private String numeroDocumentoIdentidad;
    private String especialidad;
   
   
    public Medico(){
   
         Nombre="";
         Apellido="";
         numeroDocumentoIdentidad="";
         Edad=0;
         casado=false;
         especialidad="";
         
   
    }
    /*
       Metodos que piden o establecen los valores de cada variable
       */
    public void setNombre(String valorNombre){
       
          Nombre=valorNombre;
          System.out.println("Nombre del Doctor"+ Nombre +"Se ha cambiado ha"+valorNombre+".");
         
                 
                 
     
   
    }
   
   
    public void setApellido(String valorApellido){
   
         Apellido=valorApellido;
        System.out.println("Apellido del Doctor"+ Apellido +"Se ha cambiado ha"+valorApellido+".");
   
           
   
    }
    public void setnumeroDocumentoIdentidad(String valornumeroDocumentoIdentidad){
   
       numeroDocumentoIdentidad=valornumeroDocumentoIdentidad;
       System.out.println("El numero de Identidad es"+numeroDocumentoIdentidad+"Ha Sido cambiado ha"+valornumeroDocumentoIdentidad+".");
   
   
    }
    public void setEdad(int valorEdad){
   
        Edad=valorEdad;
         
      System.out.println("La Edad del Doctor es"+Edad+"Se ha cambiado ah"+valorEdad+".");
       
     
    }
   
    public void setcasado(boolean valorcasado){
   
        casado=valorcasado;
     
        System.out.println("El estado civil del doctor"+casado+""+valorcasado+".");
   
    }
   
    public void setespecialidad( String valorepecialidad){
   
   
      especialidad=valorepecialidad;
       
      System.out.println("La especialida del doctor es"+especialidad+"Y ha sido cambiada ha"+valorepecialidad+".");
   
    }
   
    /*
       metodos que llaman o muestra un retorno
       
       */
    public String getNombre(){
   
        return Nombre;
   
   
    }
   
    public String getApellido(){
   
       return Apellido;
   
    }
   
   
    public String getnumeroDocumentoIdentidad(){
   
       return numeroDocumentoIdentidad;
   
    }
   
    public int getEdad(){
   
   
      return Edad;
   
    }
   
   
    public boolean getcasado(){
   
      return casado;
   
    }
   
    public String especialidad(){
     
      return especialidad;
     
    }
}

Título: Re:Ejercicio CU00632B -Tutorial Java
Publicado por: mory9008 en 02 de Noviembre 2015, 06:52
Hola, esta es mi respuesta, ya es algo tarde, y resumí el tiempo, espero sea correcta;


Código: [Seleccionar]
public class Medico {
    private String nombre;
    private String apellidos;
    private int edad;
    private boolean casado;
    private String ndi;
    private String especialidad;
   

 
    public Medico()
    {
      nombre="Jose Antonio";
      apellidos= " Rodriguez Pacheco";
      edad=27;
      casado=true;
      ndi="1234567890";
      especialidad="Oncologia";
    }

   
    public void setNombre(String valNombre)
    {
      nombre=valNombre;
    }
   
    public void setApellidos(String valApellidos){
        apellidos=valApellidos;
    }
   
    public void setEspecialidad(String valEspecialidad){
        especialidad=valEspecialidad;
    }
   
    public String getNombre(){
        return nombre;
    }
   
    public String getApellidos(){
        return apellidos;
    }
   
    public String getEspecialidad(){
           
        return especialidad;
    }

 public String cambiaEspecialidad(){
       
        if(!especialidad.equals("Oncologia")){
             System.out.println(" El médico " + nombre + apellidos + "Ha cambiado de especialidad \n La nueva especialidad es: " + especialidad);
        } 
       
        return especialidad;
       
    }
}
Título: Re:Crear objetos con BlueJ e invocar sus métodos poo java ejercicio CU00632B
Publicado por: César Krall en 04 de Noviembre 2015, 08:47
Hola! Puede consultarse una solución correcta al ejercicio en https://www.aprenderaprogramar.com/foros/index.php?topic=1300.0

kerras: si creamos un objeto en BlueJ e invocamos el método set nombre nos aparece un mensaje como este: <<Nombre del DoctorpedroSe ha cambiado hapedro.>> Esto es incorrecto, debes corregirlo. Ten en cuenta que al escribir:

        Nombre=valorNombre;
        System.out.println("Nombre del Doctor"+ Nombre +"Se ha cambiado ha"+valorNombre+".");

Cuando muestras el mensaje, ya Nombre es lo mismo que valorNombre, de ahí que se muestre lo mismo. También debes introducir espacios para que los textos queden con la separación adecuada.

mory9008: para pegar código hazlo como se explica en https://www.aprenderaprogramar.com/foros/index.php?topic=1460.0

Para escribir tu respuesta a un ejercicio abre un nuevo tema, no respondas sobre un tema abierto.

Esta inicialización:

Código: [Seleccionar]
    public Medico()
    {
      nombre="Jose Antonio";
      apellidos= " Rodriguez Pacheco";
      edad=27;
      casado=true;
      ndi="1234567890";
      especialidad="Oncologia";
    }

Aunque no dé error no se considera correcta, porque todos los objetos creados de tipo Medico llevarían el mismo nombre, apellidos, etc. La inicialización debe hacerse a cadenas vacías, ceros o false, como ha hecho kerras.

Tu ejercicio no está bien resuelto. El ejercicio pedía lo siguiente: <<En cada método, incluye una instrucción para que se muestre por consola un mensaje informando del cambio.>>

En los métodos que implican cambio no has incluido mensajes en todos ellos, debes corregir eso.

Saludos!