Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Bcks7 en 17 de Febrero 2016, 02:21

Título: Ejercicio con tres clases que relacionan entre sí Java CU00641B tutorial códigos
Publicado por: Bcks7 en 17 de Febrero 2016, 02:21
De nuevo dejando mis ejercicios, esperando comentarios y recomendaciones, los dejaré en códigos separados ya que son tres clases

Código: [Seleccionar]
public class SalonCasa{
    private int numeroDeTelevisores;
    private String tipoSalon;
   
    public SalonCasa () {
        numeroDeTelevisores = 0;
        tipoSalon = "";
    }
   
    public void setNumeroDeTelevisores (int valorNumeroDeTelevisores){
        numeroDeTelevisores = valorNumeroDeTelevisores;
    }
   
    public void setTipoSalon (String valorTipoSalon){
        tipoSalon = valorTipoSalon;
    }
   
    public int getNumeroDeTelevisores () {return numeroDeTelevisores;}
   
    public String getTipoSalon () {return tipoSalon;}
}

-------------------------------------------------------------------------------------------------------

Código: [Seleccionar]
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: [Seleccionar]
public class Casa {
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocina;
   
    public Casa () {
        superficie = 0;
        direccion = "";
        salonCasa = new SalonCasa ();
        cocina = new CocinaCasa () ;
    }
}
Título: Re:Ejercicio CU00641B Java desde cero
Publicado por: Lorenzo31 en 17 de Febrero 2016, 07:20
bien las dos primeras clases, en la clase casa sólo hay constructor, faltan todos los getters y setters.
saludos.
Título: Re:Ejercicio CU00641B Java desde cero
Publicado por: Bcks7 en 23 de Febrero 2016, 02:18
bien las dos primeras clases, en la clase casa sólo hay constructor, faltan todos los getters y setters.
saludos.

Hola de nuevo Lorenzo, gracias por tomarte el tiempo de checar mi código, después de varios días dejo a tu disposición el código agregando lo que hacia falta, espero este bien esta vez

Código: [Seleccionar]
public class Casa {
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocinaCasa;
   
    public Casa () {
       
        superficie = 0.0;
        direccion = "";
        salonCasa = new SalonCasa ();
        cocinaCasa = new CocinaCasa () ;
    }
   
    public void setSuperficie (double valorSuperficie){
        superficie = valorSuperficie;
    }
   
    public void setDireccion (String valorDireccion){
        direccion = valorDireccion;
    }
   
    public double getSuperficie (){return superficie;}
   
    public String getDireccion (){return direccion;}
   
    public void getDatosCasa(){//Metodo que devuelve informacion
       int numeroDeTelevisores = salonCasa.getNumeroDeTelevisores();
       String tipoSalon = salonCasa.getTipoSalon();
       boolean esIndependiente = cocinaCasa.getEsIndependiente();
       int numeroDeFuegos = cocinaCasa.getNumeroDeFuegos();
        String datosCasa = "El objeto Casa presenta los siguientes atributos: Esta en la calle:" +direccion+
        "Metros cubiertos:" +superficie+ "Cantidad de televisores:" +numeroDeTelevisores+ "Tipo de salon:" +tipoSalon+
        "La cocina es:" +esIndependiente+ "La cocina tiene" +numeroDeFuegos+ " fuegos.";
    }
    }
   
/code]
Título: Re:Ejercicio con tres clases que relacionan entre sí Java CU00641B tutorial códigos
Publicado por: Lorenzo31 en 23 de Febrero 2016, 20:35
Debes tratar como un objeto cualquiera salonCasa y cocinaCasa.

Eso significa que puedes igualarlo sin ningun problema a otro objeto salonCasa o cocinaCasa.

el getter sería

    public salonCasa getSalonCasa() { return salonCasa; }
 
y el setter sería

   public void setSalonCasa( salonCasa valorSalonCasa ) { salonCasa = valorSalonCasa; }

Tienes que fijarte que cuando creas un salonCasa o un cocinaCasa, blueJ te crea un objeto abajo, pues una vez lo tengas creado, activas el
    setSalonCasa(idDelObjetoCreadoEnBlueJ);

Verás que te lo recoje sin problema, es una de las claves de la orientación a objetos.
Pero cuesta un poco asimilarlo.
Título: Re:Ejercicio con tres clases que relacionan entre sí Java CU00641B tutorial códigos
Publicado por: Bcks7 en 24 de Febrero 2016, 05:55
Ok, una vez más gracias por tu respuesta Lorenzo, de hecho creo es más práctico de esa manera, solo seguí el ejemplo y por eso pensé esa sería la manera correcta pero vaya es más práctica la forma en que lo has puesto, gracias.
Título: Re:Ejercicio con tres clases que relacionan entre sí Java CU00641B tutorial códigos
Publicado por: Bcks7 en 27 de Febrero 2016, 15:37
Hola de nuevo Lorenzo, hice las correcciones como indicaste pero me devuelve "cannot find symbol - class salonCasa"

Que debo hacer?
Título: Re:Ejercicio con tres clases que relacionan entre sí Java CU00641B tutorial códigos
Publicado por: César Krall en 28 de Febrero 2016, 21:13
Hola Bcks7! Echale un ojo a este hilo y las explicaciones que incluye, https://www.aprenderaprogramar.com/foros/index.php?topic=1220.0

Saludos!
Título: Re:Ejercicio con tres clases que relacionan entre sí Java CU00641B tutorial códigos
Publicado por: Bcks7 en 10 de Marzo 2016, 02:09
Hola Cesar ya un largo tiempo, bueno de las formas que vi en los hilos que pusiste me quede con la siguiente, se me hizo mas practica, espero puedas checar y decirme si ha quedado bien definida la clase casa que es la que necesitaba corregir

Código: [Seleccionar]
public class Casa{
    private double superficie;
    private String direccion;
    private SalonCasa salonCasa;
    private CocinaCasa cocina;
   
    public Casa(){
        superficie = 0.0;
        direccion = "";
        salonCasa = new SalonCasa();
        cocina = new CocinaCasa();
    }
   
    public void setSuperficie (double valorSuperficie){
        superficie = valorSuperficie;
    }
    public void setDireccion (String valorDireccion){
        direccion = valorDireccion;
    }
    public void setSalonCasa (SalonCasa objetoSalon){
        salonCasa = new SalonCasa();
    }
    public void setCocina (CocinaCasa objetoCocina){
        cocina = new CocinaCasa();
    }
   
    public double getSuperficie (){return superficie;}
    public String getDireccion () {return direccion;}
    public SalonCasa getSalonCasa (){return salonCasa;}
    public CocinaCasa getCocina () {return cocina;}


}
Título: Re:Ejercicio con tres clases que relacionan entre sí Java CU00641B tutorial códigos
Publicado por: Lorenzo31 en 11 de Marzo 2016, 11:13
Esto ya me gusta más, buen trabajo Bcks7, sigue así.

Aunque ahora no lo comprendas mucho ( al menos a mi me pasó ) es importante que te quedes con que se puede tratar a los objetos como variables, cuando se les asigna o llama en funciones.

Saludos.
Título: Re:Ejercicio con tres clases que relacionan entre sí Java CU00641B tutorial códigos
Publicado por: Bcks7 en 16 de Marzo 2016, 03:45
Gracias Lorenzo, a seguir aprendiendo