Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Bcks7 en 16 de Septiembre 2016, 00:22
-
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.
//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);
}
}
-
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
-
Siento mucho mi falta de atención al poner solo una clase, dejo el ejercicio con todas sus clases.
SalonCasa
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
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
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
-
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
-
Gracias por el consejo Alex.