Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado 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
// 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;
}
}
-
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:
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:
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":
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 ;)
-
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.
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