Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: german_i23 en 21 de Junio 2016, 21:50
-
Buenas, queria saber si alguien me podia orientar en si esta bien resuelto el ejercicio de esta entrega (mire en otros temas y no pude llegar a la conclucion yo mismo si estaba bien resuelto), ya que fue una entrega que me complico comprender, aunque creo que finalmente lo pude hacer. Dejo debajo los 3 codigos de cada una de las clases.
CODIGO DE SALON CASA
public class saloncasa {
//Declaro los parametros que va a tener mi clase "saloncasa"
private int nrotv;
private String tiposalon;
//Creo constructor para inicializar los parametros
public saloncasa () {
nrotv = 0;
tiposalon = "desconocido";
}
//Creo metodo para introducirle valor a los parametros
public void setNrotv (int valorNrotv) {
nrotv = valorNrotv;
}
public void setTiposalon (String valorTiposalon) {
tiposalon = valorTiposalon;
}
//Creo metodo para que me devuelve los valores de los parametros
public int getNrotv () {return nrotv;}
public String getTiposalon () {return tiposalon;}
}
CODIGO DE COCINACASA
public class cocinacasa {
private boolean esindependiente;
private int nrodefuegos;
public cocinacasa () {
esindependiente = false;
nrodefuegos = 0;
}
public void setEsindependiente (boolean valorEsindependiente) {
esindependiente = valorEsindependiente;
}
public void setNrodefuegos (int valorNrodefuegos) {
nrodefuegos = valorNrodefuegos;
}
public boolean getEsindependiente () {return esindependiente;}
public int getnrodefuegos () {return nrodefuegos;}
}
CODIGO DE CASA
public class casa {
private double superficie;
private String direccion;
private saloncasa saloncasa1;
private cocinacasa cocinacasa1;
public casa () {
superficie = 0.0;
direccion = "desconocido";
saloncasa1 = new saloncasa ();
cocinacasa1 = new cocinacasa ();
}
public void setSuperficie (double valorSuperficie) {
superficie = valorSuperficie;
}
public void setDireccion (String valorDireccion) {
direccion = valorDireccion;
}
public void setCocinacasa1 (cocinacasa valorCocinacasa1) {
cocinacasa1 = valorCocinacasa1;
}
public void setSaloncasa1 (saloncasa valorSaloncasa1) {
saloncasa1 = valorSaloncasa1;
}
public double getSuperficie () {return superficie;}
public String getDireccion () {return direccion;}
public saloncasa getSaloncasa1 () {return saloncasa1;}
public cocinacasa getCocinacasa1 () {return cocinacasa1;}
}
Se que estoy, por llamarlo de alguna manera, poniendome pesado en el foro preguntando muchas cosas, pero es para estar seguro de estar yendo por el camino correcto. Mas adelante, si dios quiere, me tocara ayudar a mi.
Saludos.
-
Hola German_i23, yo he escrito otro código, he visto el tuyo y creo, dentro de mi ignorancia que esta bien. Lo único, yo cambiaría el nombre de las clases por la primera en mayusculas, pues te sera mas fácil identificar, por lo menos para mi. (private saloncasa saloncasa1;)
Pero yo lo he hecho de otro modo, el resultado me da bueno pero no se si lo habré hecho bien, a ver si hay alguno que nos pueda corregir en el caso de que nos haga falta.
Código CocinaCasa
public class CocinaCasa{
private boolean esIndependiente;
private 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;}
}
Código SalonCasa
public class SalonCasa{
private int numeroDeTelevisiones;
private String tipoSalon;
public SalonCasa(){
numeroDeTelevisiones=0;
tipoSalon="desconocido";
}
public void setNumeroDeTelevisiones(int valorNumeroDeTelevisiones){
numeroDeTelevisiones=valorNumeroDeTelevisiones;
}
public void setTipoSalon (String valorTipoSalon){
tipoSalon=valorTipoSalon;
}
public int getNumeroDeTelevisiones(){return numeroDeTelevisiones;}
public String getTipoSalon(){return tipoSalon;}
}
Código Casa
public class Casa{
private double superficie;
private String direccion;
private SalonCasa salonCasa;
private CocinaCasa cocina;
private String datosSalon;
private String datosCocina;
public Casa(){
//establezco unos valores de defecto los atributos simples
superficie=0;
direccion="Direccion";
//Creo nuevos objetos si se trata de atributos objeto
salonCasa =new SalonCasa();
cocina =new CocinaCasa();
}
//Seters
public void setSuperficie(Double valorSuperficie){
superficie=valorSuperficie;
}
public void setDireccion(String valorDireccion){
direccion=valorDireccion;
}
public void setNumeroDeTelevisiones(int valorNumeroDeTelevisiones){ //para que esto se realice en saloncasa tambien tienen qu existir los seters
salonCasa.setNumeroDeTelevisiones(valorNumeroDeTelevisiones);
}
public void setTipoSalon(String valorTipoSalon){
salonCasa.setTipoSalon(valorTipoSalon);
}
// o de esta manera
public void setCocina(boolean valorEsIndependiente,int valorNumeroDeFuegos){
cocina.setEsIndependiente(valorEsIndependiente);
cocina.setNumeroDeFuegos(valorNumeroDeFuegos);
}
/*
public void setSalon ( SalonCasa valorSalon ) {
salonCasa = new SalonCasa();
salonCasa.setNumeroDeTelevisiones(valorSalon.getNumeroDeTelevisiones());
salonCasa.setTipoSalon(valorSalon.getTipoSalon());
}
*/
public String getDatosSalon(){
String tipoSalon=salonCasa.getTipoSalon();
int numeroDeTelevisiones=salonCasa.getNumeroDeTelevisiones();
datosSalon="\n\tSalon tipo: " + tipoSalon + "\n\tNumero de Televisiones: "+ numeroDeTelevisiones;
return datosSalon;
}
public String getDatosCocina(){
boolean esIndependiente=cocina.getEsIndependiente();
int numeroDeFuegos= cocina.getNumeroDeFuegos();
datosCocina="\n\tLa cocina es independiente: " + esIndependiente+"\n\tNumero de fuegos: " + numeroDeFuegos;
return datosCocina;
}
public String getDatosCasa(){
String datosCasa;
getDatosSalon();
getDatosCocina();
datosCasa="\nDatos de la casa:\n\tDireccion: " + direccion + "\n\tSuperficie" + superficie + " \nSalon: " + datosSalon + " \nCocina: " + datosCocina;
System.out.println(datosCasa);
return datosCasa;
}
}
Espero que alguien me diga si esta correcto.
-
Hola, lo primero comentar que para exponer la respuesta a un ejercicio debe abrirse un nuevo hilo, no responder sobre un hilo abierto por otro compañero.
El ejercicio de german_i23 está bien, únicamente comentar lo indicado por Nakocho, que los nombres de las clases Java deben comenzar con mayúsculas, y los nombres de los atributos con minúsculas.
El ejercicio de Nakocho no está bien ¿Por qué? Porque incluye código como esto en la clase Casa:
public void setNumeroDeTelevisiones(int valorNumeroDeTelevisiones){ //para que esto se realice en saloncasa tambien tienen qu existir los seters
salonCasa.setNumeroDeTelevisiones(valorNumeroDeTelevisiones);
}
El número de televisores es un atributo de los salones, no de las casas. Cada clase debe manipular (set y get) únicamente sus atributos, no los atributos de otras clases.
Sería bueno que leyeran lo que se comenta en este hilo: https://www.aprenderaprogramar.com/foros/index.php?topic=1220.0
Saludos