Autor Tema: ¿Qué es un método setter en java? ¿Un setter puede llevar return? CU00636B  (Leído 5457 veces)

MasterOfWaves

  • Sin experiencia
  • *
  • Mensajes: 11
    • Ver Perfil
Hola, os dejo mi ejercicio CU00636B del tutorial de programación Java de aprender a programar.

Para los métodos Setters, a mi me gusta utilizar return, para que nos devuelva el nuevo valor que añadimos.

Ya me decís.

Mil gracias.

Código: [Seleccionar]

// Empezamos publicando la clase rueda y definiendo los sus atributos

public class Rueda {
    private String tipo;
    private double grosor;
    private double diametro;
    private String marca;
       
    // Ahora pasamos a definir el constructor

    public Rueda () {
        tipo = "";
        grosor = 0.00;
        diametro = 0.00;
        marca = "";
    }
   
    //Creamos los métodos Setters
   
    public String setTipo (String valorTipo){
        tipo = valorTipo;
        return tipo;
    }
   
    public double setGrosor (double valorGrosor){
        grosor = valorGrosor;
        return grosor;
    }
   
    public double setDiametro (double valorDiametro){
        diametro = valorDiametro;
        return diametro;
    }
   
    public String setMarca (String valorMarca){
        marca = valorMarca;
        return marca;
    }
   
    // Creamos los métodos getters
   
    public String getTipo (){
        return tipo;
    }
   
    public double getGrosor (){
        return grosor;
    }
   
    public double getDiametro (){
        return diametro;
    }
   
    public String getMarca (){
        return marca;
    }
   
   
    // Método del apartado a)
   
    public void comprobarDimensionesA (){
        if (diametro > 1.40) {
            System.out.println ("La rueda es para un vehículo grande");
        }
        else if (diametro <= 1.40 && diametro > 0.8) {
            System.out.println ("La rueda es para un vehículo mediano");
        }
        else {
            System.out.println ("La rueda es para un vehículo pequeño");
        }
    }
   
    // Método del apartado b)
   
    public void comprobarDimensionesB () {
        if ((diametro > 1.40 && grosor < 0.40) || (diametro <= 1.40 && diametro > 0.80 && grosor < 0.25)) {
            System.out.println ("El grosor de la rueda es inferior al recomendado");
        }
        else {
            System.out.println ("La rueda es apta");
        }
    }
}

« Última modificación: 12 de Junio 2016, 23:53 por Alex Rodríguez »

Dimitar Stefanov

  • Experto
  • *****
  • Mensajes: 598
    • Ver Perfil
Buenas, MasterOfWaves.

Tienes bien resuelto el ejercicio. No sé si haces bien en poner la sentencia "return" en un método void, puesto que dicho método no es una función sino un procedimiento. Sólo las funciones devuelven valores.

Saludos :)

MasterOfWaves

  • Sin experiencia
  • *
  • Mensajes: 11
    • Ver Perfil
Hola Dimiste,

Gracias por contestarme. En realidad es que no utilizo método void, de esta manera al establecer el nuevo valor de la variable, el programa te devuelve dicho valor, sino, con el método void no te avisa (a menos que hayas dicho que lo pinte System.out.println).

Parece que de ambas maneras funciona bien, pero estoy empezando y me gustaría saber que es lo correcto (para aprender bien jeje).

Muchas gracias otra vez.

Saludos!!!

Dimitar Stefanov

  • Experto
  • *****
  • Mensajes: 598
    • Ver Perfil
Tienes razón, no me había fijado que no utilizar métodos "void".

Personalmente, yo, del curso Java desde cero, aprendí que para cada propiedad se establecen dos métodos. Uno "void", donde se modifica el valor de la propiedad y otro de algún tipo (string, double, char, float, etc.) donde se recupera dicho valor. En todos los ejemplos se ha utilizado esta técnica.

Saludos :)


MasterOfWaves

  • Sin experiencia
  • *
  • Mensajes: 11
    • Ver Perfil
Pedro, Dimiste;

Muchas gracias por vuestras aportaciones, todo claro!!

Un setter es un setter, nada de return ;-)

Saludos!

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".