Autor Tema: Ejercicio CU00641B clases que tienen como propiedades objetos de otras clases  (Leído 2956 veces)

aleexx1724

  • Principiante
  • **
  • Mensajes: 73
  • Ayuda con Java
    • Ver Perfil
clasa  casa

Código: [Seleccionar]
public class Casa{
 
    private String direccion;
    private double superficie;
    private SalonCasa salonCasa;
    private Cocina cocinaCasa;
 
    public Casa(){
    direccion ="";
    superficie=0.0;
    salonCasa=new SalonCasa();
    cocinaCasa=new Cocina();
    }

    public void setDireccion(String valorDireccion){direccion=valorDireccion;}
    public void setSuperficie(double valorSuperficie){superficie=valorSuperficie;}
   
    public void setSalonCasa(String valorTipoSalon,int valorNumeroDeTelevisores){
    valorTipoSalon=salonCasa.getTipoSalon();
    }
   
    public  String infoSalon(){
    String tipoSalon= salonCasa.getTipoSalon();
   
    String datosDeSalon="Tipo de salon: "+tipoSalon ;
    System.out.println(datosDeSalon);
   
    return datosDeSalon;
    }
   
    public String infoTelevisores(){
    int numeroDeTelevisores=salonCasa.getNumeroDeTelevisores();
    String datosDeSalon="Tipo de salon: "+numeroDeTelevisores ;
    return datosDeSalon;
    }
   
    public void infoCasa(){
     
         int numeroDeFuegos=cocinaCasa.getNumeroDeFuegos();
         boolean esIndependiente=cocinaCasa.getEsIndependiente();
   
   
    }
}

Clase SalonCasa
Código: [Seleccionar]
public class SalonCasa{
 
    private String tipoSalon;
    private int numeroDeTelevisores;
   
    public SalonCasa(){
   
    tipoSalon="Desconocido";
     numeroDeTelevisores=0;}
     //setteres
    public void setTipoSalon(String valorTipoSalon){
        tipoSalon=valorTipoSalon;     
    }
   
    public void setNumeroDeTelevisores(int valorNumeroDeTelevisores){
    numeroDeTelevisores=valorNumeroDeTelevisores;
    }
    //getters

    public String getTipoSalon(){return tipoSalon;}
    public int getNumeroDeTelevisores(){return numeroDeTelevisores;}

}

Clase Cocina

Código: [Seleccionar]
public class Cocina{

    private int numeroDeFuegos;
    private boolean esIndependiente;
   
    public  Cocina(){
    numeroDeFuegos=0;
    esIndependiente=false;
    }
   
    public void numeroDeFuegos(int valorNumeroDeFuegos)
    {numeroDeFuegos=valorNumeroDeFuegos;}
   
    public void esIndependiente(boolean valorEsIndependiente){
    esIndependiente=valorEsIndependiente;
    }

    public int getNumeroDeFuegos(){return numeroDeFuegos;}
    public boolean getEsIndependiente(){return esIndependiente;}
   
   
}
« Última modificación: 18 de Diciembre 2014, 08:57 por Alex Rodríguez »
megustaria aprender a programar en java tengo pocotiempo con esto de la programacion pero me gusta  mucho ,estoy buscando amig@s que  tambien esten aprendiendo o que sepan y puedan enseñar online ,
saludos

Gilding

  • Sin experiencia
  • *
  • Mensajes: 44
    • Ver Perfil
Re:(CU00641B)
« Respuesta #1 en: 11 de Diciembre 2014, 13:49 »
Hola aleexx1724.

Ciñendonos al planteamiento del ejercicio veo varios errores en tú código. La clase "SalonCasa" esta correctamente planteada. La clase que tú denominas "Cocina", debería llamarse "CocinaCasa", por lo demás esta clase esta correctamente planteada.

Donde más errores veo es en la clase "Casa". Vayamos por partes:

Veo los métodos setDireccion y setSuperficie, pero no has incluído los métodos getters respectivos.

El método setSalonCasa no debería existir, puesto que si necesitamos variar algún atributo del salón, podemos recurrir a los métodos setters y getters de su propia clase. Dejando a un lado que no debería existir este método... si lo has incluído... ¿Por qué no has incluído su método get y los métodos set y get para la cocina?...

Continuando con los errores, los métodos infoSalon e infoTelevisores no deberían existir, por un lado el ejercicio no los pide y por otro, de querer crearlos, deberían estar en la clase "SalonCasa", no en la clase "Casa". Además, si la intención de estos métodos es simplemente imprimir valores por consola, ¿Por qué retornan una cadena?, no es necesario, con métodos void lo puedes hacer igualmente, como lo has hecho en el método infoCasa.

Para finalizar, en el método infoCasa puedes imprimir por consola todos los valores, tanto del salon, como de la cocina y la propia casa, haciendo así innecesario (en lo que a este ejercicio concierne) la creación de los método infoSalon e inforTelevisores. En este método ibas por buen camino, has pedido y guardado los valores de los atributos de la clase "Cocina", pero no los has imprimido por consola.

Un saludo!

 

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