Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: B4rduck en 12 de Octubre 2014, 07:48

Título: Ejercicio resuelto CU00623B# (Clases Java atributos campos constructor métodos)
Publicado por: B4rduck en 12 de Octubre 2014, 07:48
Hola! Recién decidí aventurarme en el mundo de la programación, para bien o para mal opté por el lenguaje Java y estoy dando seguimiento a su curso "Java desde cero".
Quise dejar el código del ejercicio en el apartado CU00623B como lo dice el enunciado de este tema; estoy abierto a todo tipo de sugerencias, comentarios y correcciones de quienes tengan la amabilidad de responder.


Código: [Seleccionar]
// Esta clase representa una persona. -->
public class Persona { // Nombre de la clase

    private String nombre; // Nombre de la persona
    private String apellidos; // Apellidos de la persona
    private int edad; // Edad de la persona
    private boolean casado; // Estado civil de la persona
    private String DUI; // Documento único de identidad

    // Constructor: al crear un objeto persona se jecutará el código que se incluya en el constructor.

    public Persona () {
        nombre = ("");
        apellidos = ("");
        edad = 0;
        casado = true;
        DUI = ("");
    } // Cierre de la clase

    // Método para establecer nombre
    public void setnombre (String valorNombre) {
        nombre = valorNombre;
    } // Cierre del método

    // Método para establecer los apellidos
    public void setapellidos (String valorApellidos) {
        apellidos = valorApellidos; // Los apellidos de la persona
    } // Cierre del método

    public void setEdad (int valorEdad) {
        edad = valorEdad; // La edad de la persona
    } // Cierre del método

    // Método para establecer el estado civil
    public void setCasado (boolean valorCasado) {
        casado = valorCasado;
    } // Cierre del método

    // Método para establecer el numeroDocumentoIdentidad
    public void setDUI(String valorDUI) {
        DUI = valorDUI;
    }
// Método para obtener el nombre
public String getNombre (){ return nombre;} // Cierre del método

// Método para obtener el apellido
public String getApellido (){ return apellidos;} // Cierre del método

// Método para obtener la edad
public int getEdad (){ return edad;} // Cierre del método

// Método para obtener el estado civil
public boolean getCasado (){ return casado;} // // Cierre del método

// Método para obtener el número de documento único de identidad
public String getDUI (){ return DUI;} // Cierre del método

} // Cierre de las clases

Gracias, de antemano, a todos aquellos que aporten su valiosa ayuda a un servidor.
Título: Re:Entrega de ejercicio CU00623B (Clases Java atributos campos constructor métodos)
Publicado por: Jorge lopez en 12 de Octubre 2014, 19:12
Hola  Arja!

Para ser una persona que recien entra al mundo de la programacion (nivel novato) creo que has presentado una propuesta como solución a este ejercicio bastante aceptable.

Solo comentar dos puntos para que los tengas presentes en tus futuros codigos.

1ro: Para las variables de tipo String e int has inicializado sus valores con su valor por defecto correcto, en cambio para la variable de tipo boolean "casado" la has inicializado con un valor diferente a su valor por defecto que es "false" (tu la has inicializado con valor true). Lo recomendable es siempre inicializar una variable a su valor por defecto, a menos que no sea un caso especial que requiera lo contrario.

2do: A diferencia de los métodos getters donde si lo has hecho correctamente, en algunos casos de los métodos setters no has respetado o implementado una regla muy importante. Esta es la regla o estilo camelCase, exactamente su variación lowerCamelCase  http://es.wikipedia.org/wiki/CamelCase donde se usan palabras o frases compuestas, y donde la primera palabra se escribe en letras minúsculas y cada primera letra de las posibles siguientes palabras se escriben en mayúsculas. Esta regla (lowerCamelCase) se aplica a nombres de variables y nombres de métodos. Para nombres de clases se implementa la variación "UpperCamelCase" donde  la primera letra de cada una de las palabras es mayúscula. Ejemplo: public class EjemploDeUpperCamelCase.

Saludos!
Título: Re:Entrega de ejercicio CU00623B (Clases Java atributos campos constructor métodos)
Publicado por: B4rduck en 12 de Octubre 2014, 22:22
Excelente Sniper, tomaré en cuenta tus recomendaciones de ahora en adelante.

Gracias por revisar el código, un gran gesto de tu parte!

Saludos!
Título: Re:Entrega de ejercicio CU00623B (Clases Java atributos campos constructor métodos)
Publicado por: B4rduck en 12 de Octubre 2014, 22:35
Sniper, he aplicado los cambios al código según lo has sugerido; lo dejo a continuación para corroborar con tu ayuda si he comprendido los puntos mencionados:

Código: [Seleccionar]
// Esta clase representa una persona. -->
public class Persona { // Nombre de la clase

    private String nombre; // Nombre de la persona
    private String apellidos; // Apellidos de la persona
    private int edad; // Edad de la persona
    private boolean casado; // Estado civil de la persona
    private String DUI; // Documento único de identidad

    // Constructor: al crear un objeto persona se jecutará el código que se incluya en el constructor.

    public Persona () {
        nombre = ("");
        apellidos = ("");
        edad = 0;
        casado = false;
        DUI = ("");
    } // Cierre de la clase

    // Método para establecer nombre
    public void setNombre (String valorNombre) {
        nombre = valorNombre;
    } // Cierre del método

    // Método para establecer los apellidos
    public void setApellidos (String valorApellidos) {
        apellidos = valorApellidos; // Los apellidos de la persona
    } // Cierre del método

    public void setEdad (int valorEdad) {
        edad = valorEdad; // La edad de la persona
    } // Cierre del método

    // Método para establecer el estado civil
    public void setCasado (boolean valorCasado) {
        casado = valorCasado;
    } // Cierre del método

    // Método para establecer el numeroDocumentoIdentidad
    public void setDUI(String valorDUI) {
        DUI = valorDUI;
    }
// Método para obtener el nombre
public String getNombre (){ return nombre;} // Cierre del método

// Método para obtener el apellido
public String getApellido (){ return apellidos;} // Cierre del método

// Método para obtener la edad
public int getEdad (){ return edad;} // Cierre del método

// Método para obtener el estado civil
public boolean getCasado (){ return casado;} // // Cierre del método

// Método para obtener el número de documento único de identidad
public String getDUI (){ return DUI;} // Cierre del método

} // Cierre de las clases

Gracias, de antemano![/font]
Título: Re:Entrega de ejercicio CU00623B (Clases Java atributos campos constructor métodos)
Publicado por: Jorge lopez en 13 de Octubre 2014, 14:49
 Mucho mejor!

Solo comentarte que para los valores las variables de tipo String los paréntesis "()" están de mas, aunque tu código funciona igual con o sin ellos lo correcto es tratar de que tu código sea lo mas corto y claro posible por ende, si con una sintaxis como:
Código: [Seleccionar]
String nombre = (""); se obtiene el mismo resultado que con una sintaxis como:
Código: [Seleccionar]
String nombre = ""; yo en lo personal optaría por esta ultima (mas claro simple y sencillo, menos escribir, ext...). Esto es solo un comentario constructivo, en lo general puedes estar satisfecho (yo lo estoy  ;)) con esta respuesta a este ejercicio que has presentado y puedes continuar adelante con el curso.

Saludos!
Título: Re:Entrega de ejercicio CU00623B (Clases Java atributos campos constructor métodos)
Publicado por: B4rduck en 13 de Octubre 2014, 22:00
Venga, muy satisfecho estoy luego de haber recibido tu aprobación! Y como aprendiz, estoy abierto a todo tipo de sugerencias, críticas, comentarios y todo aquello que por el bien del aprendizaje sea bienvenido!
Tomaré en cuenta tu recomendación para futuros ejercicios...

Muy agradecido por tu ayuda!

Saludos!
Título: Re:Ejercicio resuelto CU00623B# (Clases Java atributos campos constructor métodos)
Publicado por: Redemption en 08 de Abril 2015, 09:22
Hola!

Citar
// Constructor: al crear un objeto persona se jecutará el código que se incluya en el constructor.

    public Persona () {
        nombre = ("");
        apellidos = ("");
        edad = 0;
        casado = false;
        DUI = ("");
    } // Cierre de la clase

También me parece bueno aclarar que el comentario que has puesto al final de esta parte de código "// Cierre de la clase" debería ser mas bien "// Cierre del constructor", ya que la clase "Persona" en este caso se cierra al final de todo el código.