Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: dicasort en 07 de Abril 2016, 19:26
-
Hola a todos, estoy realizando los ejercicios y para este en particular me sale lo siguiente cuando ejecuto el metodo do nombre y pasa para todos los que son tipo String, aqui va el codigo
public class Medico {//Creación de la clase
private String nombre;
private String apellido;
private int edad;
private boolean casado;
private String numeroDocumentoIdentidad;
private String especialidad;
private int resto;
private int faltan;
public Medico () {// Creación constructor
nombre= "";
apellido= "";
edad= 0;
casado= false;
numeroDocumentoIdentidad= "";
especialidad= "";
}
// creación metodos
public void setNombre (String Nombre){
nombre= Nombre;
System.out.println("Ha cambiado el nombre del médico de nombre: " + nombre + " a: " + Nombre);
}
public void setApellido (String Apellido){
apellido= Apellido;
System.out.println("El apellido del medico es" + apellido);
}
public void setEdad (int Edad){
edad= Edad;
System.out.println("La edad del medico es" + edad);
}
public void setCasado (boolean Casado){
casado= Casado;
System.out.println("El medico es casado?" + casado);
}
public void setnumeroDocumentoIdentidad (String NumeroDocumentoIdentidad){
numeroDocumentoIdentidad= NumeroDocumentoIdentidad;
System.out.println("El Documento de Identificación del medico es" + numeroDocumentoIdentidad);
}
public void setEspecialidad (String Especialidad){
especialidad= Especialidad;
System.out.println("La especialidad del medico es:" + especialidad);
}
public void calculoParaMultiploEdad (){
resto=(edad%5);
faltan=(5-resto);
System.out.println (" El medico de nombre:" +nombre+ "con especialidad:" + especialidad + "tendra una edad multiplo de 5 dentro de :" + faltan);
}
public String setNombre (){
return nombre;
//return apellido;
// System.out.println("Ha cambiado el nombre del medico:" + nombre );
}
public int setEdad (){
return edad;
// System.out.println ("Ha cambiado la edad del medico:" + edad );
}
public boolean setCasado (){
return casado;
// System.out.println ("Ha cambiado el estado del medico:" + casado );
}
public String setnumeroDocumentoIdentidad (){
return numeroDocumentoIdentidad;
//System.out.println ("Ha cambiado el numero de documento de identidad del medico:" + numeroDocumentoIdentidad );
}
public String setEspecialidad (){
return especialidad;
// System.out.println ("Ha cambiado la especialidad del medico:" + especialidad );
}
}
Al invocar el método setNombre después de crear un objeto en BlueJ y escribir Jose me sale este error:
Error cannot find symbol - variable Jose
-
Hola dicasort,
Lo primero es que cuando quieras subir tu ejercicio de un tema debes de crear un nuevo tema. Nunca lo pongas en un tema de otra persona que ya estaba cerrado.
Lo siguiente es que los nombres de las variables y atributos siempre deben comenzar por minúscula. Las variables que has usado en los métodos setters las comienzas por mayúscula. Mi consejo es que uses algo parecido a "valorNombre" por ejemplo.
No entiendo muy bien tu mensaje:
...para este en particular me sale lo siguiente...
Si te refieres a que, por ejemplo en el nombre, el mensaje te repite el valor introducido:
Ha cambiado el nombre del médico de nombre: Francisco a: Francisco
Esto es debido a que, primero introduces el valor que tienes en la variable "Nombre" en la variable "nombre", y después muestras el mensaje. Si inviertes el orden de estas dos lineas te dará bien el mensaje.
Realiza los cambios y vuelve a subir el ejercicio, pero creando un nuevo tema.
Un Saludo,
-
Hola dicasort, tal como comenta Enzo para escribir sobre un ejercicio crea siempre un nuevo tema. Voy a pasar tu pregunta a un nuevo tema.
Sobre tu duda, creo que el error se debe a que cuando en BlueJ quieres pasar un parámetro String tienes que escribirlo entre comillas, es decir, debes escribir en la casilla de BlueJ "Jose" incluyendo las comillas en lugar de Jose sin comillas.
Saludos
-
Si efectivamente era las comillas.
Gracias