Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: ronal.d87 en 03 de Septiembre 2018, 20:11
-
Hola he aqui el desarrollo de la actividad CU00642B del curso básico de programación java en pdf.
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. Define otro constructor que reciba como parámetros la superficie, dirección y un objeto de tipo SalonCasa y otro de tipo CocinaCasa. Compila el código para comprobar que no presenta errores, y crea un objeto de tipo Casa usando el constructor que recibe parámetros. Ten en cuenta que antes tendrás que haber creado los objetos de tipo SalonCasa y CocinaCasa para poder pasárselos al constructor. Comprueba que el objeto Casa se inicializa correctamente consultando el valor de sus atributos después de haber creado el objeto.
Clase SalonCasa
/**
*
* @author Ronnie
*/
public class SalonCasaCU00642B {
private int numeroTv ;
private String tipoSalon;
public SalonCasaCU00642B() {
numeroTv = 0;
tipoSalon = "desconocido";
}
public SalonCasaCU00642B(int numeroTv, String tipoSalon) {
this.numeroTv = numeroTv;
this.tipoSalon = tipoSalon;
}
public void setNumeroTv(int numeroTv) {
this.numeroTv = numeroTv;
}
public void setTipoSalon(String tipoSalon) {
this.tipoSalon = tipoSalon;
}
public int getNumeroTv() {
return numeroTv;
}
public String getTipoSalon() {
return tipoSalon;
}
}
Clase Cocina Casa
/**
*
* @author Ronnie
*/
public class CocinaCasaCU00642B {
private boolean esIndependiente;
private int numeroFuegos;
public CocinaCasaCU00642B() {
esIndependiente = false;
numeroFuegos = 0;
}
public CocinaCasaCU00642B(boolean esIndependiente, int numeroFuegos) {
this.esIndependiente = esIndependiente;
this.numeroFuegos = numeroFuegos;
}
public void setEsIndependiente(boolean esIndependiente) {
this.esIndependiente = esIndependiente;
}
public void setNumeroFuegos(int numeroFuegos) {
this.numeroFuegos = numeroFuegos;
}
public boolean isEsIndependiente() {
return esIndependiente;
}
public int getNumeroFuegos() {
return numeroFuegos;
}
}
Clase Casa
public class CasaCU00642B {
private double superficie;
private String direccion;
private SalonCasaCU00642B salonCasa;
private CocinaCasaCU00642B cocina;
//Constructor General
public CasaCU00642B() {
superficie = 90.23;
direccion = "La Marsella";
salonCasa = new SalonCasaCU00642B();
cocina = new CocinaCasaCU00642B();
}
//Constructor Parametrizado
public CasaCU00642B(double valSuperficie, String valDirec, SalonCasaCU00642B valSalCasa
, CocinaCasaCU00642B valCocina) {
superficie = valSuperficie;
direccion = valDirec;
salonCasa = new SalonCasaCU00642B(valSalCasa.getNumeroTv(),valSalCasa.getTipoSalon());
cocina = new CocinaCasaCU00642B(valCocina.isEsIndependiente(), valCocina.getNumeroFuegos());
}
public double getSuperficie() {
return superficie;
}
public String getDireccion() {
return direccion;
}
public SalonCasaCU00642B getSalonCasa() {
return salonCasa;
}
public CocinaCasaCU00642B getCocina() {
return cocina;
}
public void setSuperficie(double superficie) {
this.superficie = superficie;
}
public void setDireccion(String direccion) {
this.direccion = direccion;
}
public void setSalonCasa(SalonCasaCU00642B valSalonCasa) {
salonCasa = valSalonCasa;
salonCasa = new SalonCasaCU00642B();
salonCasa.setNumeroTv(valSalonCasa.getNumeroTv());
salonCasa.setTipoSalon(valSalonCasa.getTipoSalon());
}
public void setCocina(CocinaCasaCU00642B valCocina) {
cocina = valCocina;
cocina = new CocinaCasaCU00642B();
cocina.setEsIndependiente(valCocina.isEsIndependiente());
cocina.setNumeroFuegos(valCocina.getNumeroFuegos());
}
public static void main(String[] args) {
CasaCU00642B casa = new CasaCU00642B();
System.out.println("la casa tiene una superficie de "+casa.getSuperficie() + ", "
+ "\n su direccion es "+ casa.getDireccion() + "\n, un salon con"
+ casa.getSalonCasa().getNumeroTv()+" televisores, \ncon un tipo de salon "
+ casa.getSalonCasa().getTipoSalon() + "\ntiene "+ casa.getCocina().getNumeroFuegos()+" numero de fuegos");
if(casa.getCocina().isEsIndependiente() == true){
System.out.println("la cocina Es independiente");
}else{
System.out.println("la cocina No es independiente");
}
}
}
-
Buenas, el ejercicio está bien resuelto aunque no era necesario incluir un método main (en el programa del curso aún no se ha explicado el main). Y en caso de incluirlo, es preferible hacerlo en una clase aparte. En este hilo hay algunos comentarios interesantes: https://aprenderaprogramar.com/foros/index.php?topic=1238.0
Salu2