Autor Tema: Ejercicio resuelto del tutorial básico de programación Java código CU00641B  (Leído 3061 veces)

Bcks7

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 48
    • Ver Perfil
Dejo mi solución a este ejercicio CU00641B del curso básico de programador Java, solo tengo una pequeña duda, de acuerdo a las indicaciones dice que establezca a unos valores por defecto, mi duda es que solo dice establecer, no habla de establecer y obtener valores, dejo mi código y si es necesario establecer agradecería me lo dijeran, gracias de antemano.

Código: [Seleccionar]
//CU00641B CLASES QUE UTILIZAN OBJETOS, RELACION DE USO ENTRE CLASES, DIAGRAMA DE CLASES.
public class Casa{
   
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocinaCasa;
   
    public Casa(){
       
        superficie = 0;
        direccion = "";
        salonCasa = new SalonCasa();
        cocinaCasa = new CocinaCasa();
    }
   
    public void setSuperficie(double valorSuperficie){
        superficie = valorSuperficie;
    }
    public void setDireccion(String valorDireccion){
        direccion = valorDireccion;
    }
    public void setNumeroTelevisores(int valorNumeroTelevisores){
        salonCasa.setNumeroTelevisores(valorNumeroTelevisores);
    }
    public void setTipoSalon(String valorTipoSalon){
        salonCasa.setTipoSalon(valorTipoSalon);
    }
    public void setEsIndependiente(boolean valorEsIndependiente){
        cocinaCasa.setEsIndependiente(valorEsIndependiente);
    }
    public void setNumeroDeFuegos(int valorNumeroDeFuegos){
        cocinaCasa.setNumeroDeFuegos(valorNumeroDeFuegos);
    }
       
    }
       
« Última modificación: 29 de Septiembre 2016, 19:24 por Alex Rodríguez »

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:CU00641B CLASES QUE UTILIZAN OBJETOS, RELACION DE USO ENTRE CLASE
« Respuesta #1 en: 21 de Septiembre 2016, 20:49 »
hOLA Bcks7, te comento algunas cuestiones:

- Por favor no escribir los títulos de los mensajes en mayúsculas. Leer este hilo https://www.aprenderaprogramar.com/foros/index.php?topic=1460.0 donde hay indicaciones y seguirlas

- El ejercicio pide desarrollar el código de tres clases, falta el código de dos clases. Incluye siempre todo el código para hacer posible la compilación (incluso si es código que hayas utilizado en otros ejercicios, de esa forma facilitas que podamos compilar directamente sin tener que estar buscando otro código)

Saludos

Bcks7

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 48
    • Ver Perfil
Re:CU00641B CLASES QUE UTILIZAN OBJETOS, RELACION DE USO ENTRE CLASE
« Respuesta #2 en: 23 de Septiembre 2016, 00:11 »
Siento mucho mi falta de atención al poner solo una clase, dejo el ejercicio con todas sus clases.

SalonCasa
Código: [Seleccionar]
public class SalonCasa{//Inicio de la clase
   
    private int numeroDeTelevisores;
    private String tipoSalon;
   
    public SalonCasa(){//Constructor sin parametros
        numeroDeTelevisores = 0;
        tipoSalon = "Desconocido";
    }
   
    //Setters
    public void setNumeroDeTelevisores(int valorNumeroDeTelevisores){
        numeroDeTelevisores = valorNumeroDeTelevisores;
    }
    public void setTipoSalon(String valorTipoSalon){
        tipoSalon = valorTipoSalon;
    }
   
    //Getters
    public int getNumeroDeTelevisores(){return numeroDeTelevisores;}
    public String getTipoSalon(){return tipoSalon;}
}

CocinaCasa
Código: [Seleccionar]
public class CocinaCasa{//Inicio de la clase
   
    private boolean esIndependiente;
    private int numeroDeFuegos;
   
    public CocinaCasa(){//Constructor sin parametros
        esIndependiente = false;
        numeroDeFuegos = 0;
    }
   
    //Setters
    public void setEsIndependiente(boolean valorEsIndependiente){
        esIndependiente = valorEsIndependiente;
    }
    public void setNumeroDeFuegos(int valorNumeroDeFuegos){
        numeroDeFuegos = valorNumeroDeFuegos;
    }
   
    //Getters
    public boolean getEsIndependiente(){return esIndependiente;}
    public int getNumeroDeFuegos(){return numeroDeFuegos;}
}//Cierre de la clase

Casa
Código: [Seleccionar]
public class Casa{//Inicio de la clase
   
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocina;
   
    //Constructor sin parametros
    public Casa(){
        superficie = 0;
        direccion = "";
        salonCasa = new SalonCasa();
        cocina = new CocinaCasa();
    }
   
    //Setters
    public void setSuperficie(double valorSuperficie){
        superficie = valorSuperficie;
    }
    public void setDireccion(String valorDireccion){
        direccion = valorDireccion;
    }
    public void setSalonCasa(int valorNumeroDeTelevisores, String valorTipoSalon){
        salonCasa.setNumeroDeTelevisores(valorNumeroDeTelevisores);
        salonCasa.setTipoSalon(valorTipoSalon);
    }
    public void setCocinaCasa(boolean valorEsIndependiente, int valorNumeroDeFuegos){
        cocina.setEsIndependiente(valorEsIndependiente);
        cocina.setNumeroDeFuegos(valorNumeroDeFuegos);
    }
   
    //Getters
    public double getSuperficie(){return superficie;}
    public String getDireccion(){return direccion;}
    public SalonCasa getSalonCasa(){return salonCasa;}
    public CocinaCasa getCocina(){return cocina;}
}//Cierre de la clase
       

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:Ejercicio resuelto del tutorial básico de programación Java código CU00641B
« Respuesta #3 en: 29 de Septiembre 2016, 19:28 »
Hola en la clase Casa es preferible trabajar directamente con objetos en los métodos public void setSalonCasa y public void setCocinaCasa ya que en una clase no debemos operar con atributos propios de otra clase. En este ejemplo, en la clase Casa no debemos operar con atributos de SalonCasa y CocinaCasa.

Mira esta referencia para aclarar las ideas: https://www.aprenderaprogramar.com/foros/index.php?topic=1220.0

Saludos

Bcks7

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 48
    • Ver Perfil
Gracias por el consejo Alex.

 

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".