Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: luispdl en 06 de Octubre 2014, 20:33

Título: Ejercicio (CU00641B) Clases que utilizan Objetos Java
Publicado por: luispdl en 06 de Octubre 2014, 20:33
Ahí pongo la resolución de este ejercicio, a ver si me lo corrigen.
Clase SalonCasa
Código: [Seleccionar]
public class SalonCasa {
    int numeroDeTelevisores;
    String tipoSalon;
   
    public SalonCasa() {
        numeroDeTelevisores = 0;
        tipoSalon = "Desconocido";
    }
   
    public void setNumeroDeTelevisores(int valorNumeroDeTelevisores) {
        numeroDeTelevisores = valorNumeroDeTelevisores;
    }
   
    public void setTipoSalon(String valorTipoSalon) {
        tipoSalon = valorTipoSalon;
    }
   
    public int getNumeroDeTelevisores() {
        return numeroDeTelevisores;
    }
   
    public String getTipoSalon () {
        return tipoSalon;
    }
   
   
}

Clase CocinaCasa
Código: [Seleccionar]
public class CocinaCasa {
    boolean esIndependiente;
    int numeroDeFuegos;
   
    public CocinaCasa () {
        esIndependiente= false;
        numeroDeFuegos = 0;
    }
   
    public void setEsIndependiente (boolean valorEsIndependiente) {
        esIndependiente = valorEsIndependiente;
    }
   
    public void setNumeroDeFuegos(int valorNumeroDeFuegos) {
        numeroDeFuegos = valorNumeroDeFuegos;
    }
   
    public boolean getEsIndependiente () {
        return esIndependiente;
    }
   
    public int getNumeroDeFuegos () {
        return numeroDeFuegos;
    }
}

Clase Casa
Código: [Seleccionar]
public class Casa {
    double superficie;
    String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocina;
   
    public Casa () {
        superficie = 0.0;
        direccion = "Desconocida";
        salonCasa = new SalonCasa();
        cocina = new CocinaCasa ();
    }
   
    public void setSuperficie (double valorSuperficie) {
        superficie = valorSuperficie;
    }
   
    public void setDireccion (String valorDireccion) {
        direccion = valorDireccion;
    }
   
    public void setSalon (int valorNumeroTelevisores, String valorTipoSalon) {
        salonCasa.setNumeroDeTelevisores(valorNumeroTelevisores);
        salonCasa.setTipoSalon(valorTipoSalon);
    }
   
    public void setCocina(boolean valorEsIndependiente, int valorNumeroFuegos){
        cocina.setEsIndependiente(valorEsIndependiente);
        cocina.setNumeroDeFuegos(valorNumeroFuegos);
    }
   
    public double getSuperficie () {
        return superficie;
    }
   
    public String getDireccion () {
        return direccion;
    }
   
    public SalonCasa getSalon() {
        return salonCasa;
    }
   
    public CocinaCasa getCocina() {
        return cocina;
    }
}

Eso es todo. Muchas Gracias.
Título: Re:Ejercicio (CU00641B) Clases que utilizan Objetos.
Publicado por: toni_apr en 07 de Octubre 2014, 23:12
Hola luispdl
Tu ejercicio bien.
Solo indicarte en la clase Casa el siguiente código

    public void setSalon (int valorNumeroTelevisores, String valorTipoSalon) {
        salonCasa.setNumeroDeTelevisores(valorNumeroTelevisores);
        salonCasa.setTipoSalon(valorTipoSalon);
    }
   
    public void setCocina(boolean valorEsIndependiente, int valorNumeroFuegos){
        cocina.setEsIndependiente(valorEsIndependiente);
        cocina.setNumeroDeFuegos(valorNumeroFuegos);
    }

puede sustituirse por

    public void setSalon (SalonCasa nuevoSalon) {
        salonCasa = nuevoSalon;
    }
   
    public void setCocina(CocinaCasa nuevaCocina){
        cocina = nuevaCocina;
    }


Tu código es válido, el otro es mejor. Piensa en una clase SalonCasa que tenga 33 atributos entre int, String, float, etc.
Tendrías que poner entre los paréntesis del método un monton de texto.

Saludos
Título: Re:Ejercicio (CU00641B) Clases que utilizan Objetos.
Publicado por: luispdl en 07 de Octubre 2014, 23:17
Muchas Gracias!!!