Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: matru en 17 de Junio 2015, 02:43
-
Define tres clases: Casa, SalonCasa y CocinaCasa. La clase SalonCasa debe tener como atributos numeroDeTelevisores (int) y tipoSalon (String) y disponer de un constructor que los inicialice a 0 y “desconocido”. La clase CocinaCasa debe tener como atributos esIndependiente (boolean) y numeroDeFuegos (int) y un constructor que los inicialice a false y 0. La clase Casa tendrá los siguientes atributos de clase: superficie (double), direccion (String), salonCasa (tipo SalonCasa) y cocina (tipo CocinaCasa). Define un constructor para la clase Casa que establezca a unos valores de defecto los atributos simples y que cree nuevos objetos si se trata de atributos objeto. Compila el código para comprobar que no presenta errores, crea un objeto de tipo Casa. Comprueba que se inicializan correctamente consultando el valor de sus atributos después de haber creado los objetos.
public class Casa
{
private double superficie;
private String direccion;
private SalonCasa tipoSalonCasa;
private CocinaCasa tipoCocinaCasa;
public Casa ()
{
superficie = 0.0;
direccion = "Desconocido";
tipoSalonCasa = new SalonCasa();
tipoCocinaCasa = new CocinaCasa();
}
}
public class CocinaCasa
{
private boolean esIndependiente;
private int numeroDeFuegos;
public CocinaCasa()
{
esIndependiente = false;
numeroDeFuegos = 0;
}
}
public class SalonCasa
{
private int numeroDeTelevisores;
private String tipoSalon;
public SalonCasa ()
{
numeroDeTelevisores = 0;
tipoSalon = "Desconocido";
}
}
-
Hola Matru
He analizado tu código y lo veo bien, pero incompleto.
Lo que ha faltado son los métodos set y get de cada una de las tres clases. Si bien no está especificado en la consigna del ejercicio que haya que codificarlos, siempre tengamos en cuenta que cada clase tendrá que tener métodos para establecer y retornar los valores de sus atributos. Es algo que siempre deberá existir por el principio de ocultamiento de la información (por eso los atributos son private).
Por lo tanto establecer y retornar valores de los atributos de una clase es una competencia de la propia clase. Nunca perdamos de vista eso.
Te recomendaría que completaras cada clase con sus métodos set y get.
Saludos.