Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Artmandu en 14 de Marzo 2018, 22:24

Título: Java System.out.println para mostrar mensajes por consola dentro método CU00632B
Publicado por: Artmandu en 14 de Marzo 2018, 22:24
Hola Buenas tardes estoy tomando el curso de Java desde cero, aquí dejo el código que generé para este ejercicio CU00632B del tutorial pdf de programación Java desde cero, para que me puedan corregir de antemano muchas gracias

Código: [Seleccionar]
// Esta Clase es para el ejercicio de medico mostrando lineas de pantalla
public class Medico { //es el nombre de la clase principal
    // generamos los atributos de mi clase y los que llevara cada objeto
    private String nombre1;
    private String nombre2;
    private String apellidos1;
    private String apellidos2;
    private int edad1;
    private int edad2;
    private boolean casado1;
    private boolean casado2;
    private String numeroDocumentoIdentidad1;
    private String numeroDocumentoIdentidad2;
    private String especialidad1;
    private String especialidad2;

    //aqui comenzamos con el constructor que es un método
    public Medico () {
        nombre1 = "Sin nombre";
        nombre2 = "Sin nombre";
        apellidos1 = "Sin apellidos";
        apellidos2 = "Sin apellidos";
        edad1 = 0;
        edad2 = 0;
        casado1 = false;
        casado2 = false;
        numeroDocumentoIdentidad1 = "Sin Numero";
        numeroDocumentoIdentidad2 = "Sin Numero";
        especialidad1 = "Sin Especialidad";
        especialidad2 = "Sin Especialidad";
    }

    // aqui comienzo mis metodos Setters para obtencion de datos y las lineas de salida

    //1ro el nombre
    public void setNombre (String valorNombre) {
        nombre2 = valorNombre;
        System.out.println ("A cambiado el nombre del Doctor de: " + nombre1 + " Al de: " + nombre2);
        nombre1 = nombre2;
    }
   
    //2do los apellidos
    public void setApellidos (String valorApellidos) {
        apellidos2 = valorApellidos;
        System.out.println ("A cambiado el apeido del Doctor de: " + apellidos1 + " Al de: " + apellidos2);
        apellidos1 = apellidos2;
    }
   
    //3ro la edad
    public void setEdad ( int valorEdad) {
        edad2 = valorEdad;
        System.out.println ("A cambiado la edad del Doctor de: " + edad1 + " Al de: " + edad2);
        edad1 = edad2;
    }
   
    //4to Casado
    public void setCasado ( boolean valorCasado) {
        casado2 = valorCasado;
        System.out.println ("A cambiado el estado civil del Doctor de: " + casado1 + " Al de: " + casado2);
        casado1 = casado2;
    }
   
    //5to numeroDocumentoIdentidad
    public void setNumeroDocumentoIdentidad ( String valorNumeroDocumentoIdentidad) {
        numeroDocumentoIdentidad2 = valorNumeroDocumentoIdentidad;
        System.out.println ("A cambiado el numero de indentidad del Doctor de: " + numeroDocumentoIdentidad1 + " Al de: " + numeroDocumentoIdentidad2);
        numeroDocumentoIdentidad1 = numeroDocumentoIdentidad2;
}

//6to especialidad
    public void setEspecialidad ( String valorEspecialidad) {
        especialidad2 = valorEspecialidad;
        System.out.println ("A cambiado la especialidad del Doctor de: " + especialidad1 + " Al de: " + especialidad2);
        especialidad1 = especialidad2;
}
}
Título: Re:Java System.out.println para mostrar mensajes por consola dentro método CU00632B
Publicado por: Dan_SB en 04 de Mayo 2018, 06:16
Hola Artmandu.

No se porque no te han contestado aun... pero bueno. Primero que si vas a colocar codigo, asegurate de usar las etiquetas para insertar el codigo. En cuanto a tu codigo, esta haciendo lo que se pide en el ejercicio, pero de una forma un tanto no "elegante" ya que por cada atributo de clase que te pidieron declarar, declaras 2.

Esto:
Código: [Seleccionar]
public void setNombre (String valorNombre) {
        nombre2 = valorNombre;
        System.out.println ("A cambiado el nombre del Doctor de: " + nombre1 + " Al de: " + nombre2);
        nombre1 = nombre2;
    }

Simplemente se podria remplazar por esto:
Código: [Seleccionar]
public void setNombre (String valorNombre) {
        String aux = valorNombre;
        System.out.println ("Ha cambiado el nombre del medico: " + nombre + ". El nombre nuevo es: " + aux);
        nombre = aux;
    }

O bien, siendo mas "pros":
Código: [Seleccionar]
public void setNombre (String valorNombre) {
        System.out.println ("Ha cambiado el nombre del medico: " + nombre + ". El nombre nuevo es: " + valorNombre);
        nombre = valorNombre;
    }

Si repites el proceso en todos los demas metodos, reducirias un gran número de atributos de clase inutiles...

Salu2  ;)
Título: Re:Java System.out.println para mostrar mensajes por consola dentro método CU00632B
Publicado por: Omar Ayax en 04 de Abril 2019, 21:50
Hola, actualmente yo también me encuentro leyendo el curso java desde 0; a continuación, describo lo que para mi podría ser lo que se solicita en el ejercicio CU00632B "TRABAJAR CON OBJETOS DE TIPO MÉDICO"; sin mas por el momento quedo atento a sus comentarios.

 
Código: [Seleccionar]
public class Medico{// Inicio de la clase
   
    private String  nombre;
    private String  apellido;
    private int     edad;
    private boolean casado;
    private String  ndi;
    private String  especialidad;
   
    /*Constructor: cuando se cree un objeto médico se ejecutara el codigo que
       se incluya en el constructor*/
    public Medico (){
        nombre = "Desconocido";
        apellido = "Desconocido";
        edad = 0;
        casado = false;
        ndi = "Desconocido";
        especialidad = "Sin asignar";       
    }//Fin del constructor
   
    //Metodo para establecer el nombre de la persona
    public void setNombreApellido (String valorNombre,String valorApellido){
        nombre = valorNombre;
        apellido = valorApellido;
        System.out.println("El nombre del Medico es: "+ nombre+" "+ apellido);
    }//Fin del método
   
    //Metodo para establecer la edad y estado civil del médico
    public void setEdadYEstado (int valorEdad, boolean valorEstado){
        edad = valorEdad;
        casado = valorEstado;
        System.out.println("La edad del medico es: "+edad+" y su estado civil es: "+ casado);       
    }//Fin del método
   
    //Método pra establecer el ndi y especialidad del médico
    public void setNdiYEspecialidad (String valorNdi, String valorEspecialidad){
        ndi = valorNdi;
        especialidad = valorEspecialidad;
        System.out.println("El ndi del medico es: "+ndi+" y su especialidad es: "+especialidad);
    }//Fin del método
   
    //Métodos Gett
    public String  getNombre (){ return nombre;}
    public String  getApellido (){return apellido;}
    public int     getEdad (){return edad;}
    public boolean getEstado (){return casado;}
    public String  getNdi (){return ndi;}
    public String  getEspecialidad (){return especialidad;}
    //Fin de métodos Gett
}//Fin de la clase