Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: macarena2405 en 17 de Mayo 2015, 02:53

Título: Relación de uso entre clases Java. Concepto de diagrama de clases (CU00641B)
Publicado por: macarena2405 en 17 de Mayo 2015, 02:53
codigo casa
Código: [Seleccionar]
public class SalonCasa{
    private int numeroDeTelevisores;
    private String tipoSalon;
   
 public SalonCasa(){
     numeroDeTelevisores=0;
     tipoSalon="";
    }
    public void setNumeroDeTelevisores ( int valorNroDeTelevisores){
    numeroDeTelevisores=valorNroDeTelevisores;}
   
    public void setTipoSalon(String valorTipoSalon){
        tipoSalon=valorTipoSalon;
    }
    public int getNumerodeTelevisores (){return numeroDeTelevisores;}
    public String getTipoSalon(){return tipoSalon;}
}
[code]

Cocinacasa
[code ]public class CocinaCasa{
    private boolean esIndependiente;
    private int numeroDeFuegos;
   
    public CocinaCasa (){
        esIndependiente=true;
       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;};
}
        [code]

casa
[code] 
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=objetoSalon;}
   public void setCocina (CocinaCasa objetoCocina)
   {cocina=objetoCocina;};
   
   public double getSuperficie (){return superficie;}
   public String getDireccion () {return direccion;}
   public SalonCasa getSalonCasa(){return salonCasa;}
   public CocinaCasa getCocinaCasa(){return cocina;}
} [code]


cuando quiero setear un objeto de la clase casa me dice error de tipos porque?
Título: Re: Relación de uso entre clases Java. Concepto de diagrama de clases (CU00641B)
Publicado por: RaGa en 17 de Mayo 2015, 06:55
Hola Macarena!

El ejercicio está muy bien. Funciona correctamente. Lo único que podría decir es que no respetaste cómo inicilizar los campos en los Constructores nada más.
En la clase SalonCasa se debía inicializar el campo tipoSalon a "desconocido", y tu lo inicializaste como: tipoSalon = ""
Lo mismo sucedió en la clase CocinaCasa, el campo esIdepenediente debía inicializarse a false.

Complilé los códigos de las 3 clases que publicaste , hice correr el programa, cree objetos de los tres tipos, y no me dió ningún error.
Vuelve a intentarlo, quizás cometiste algún error en esa oportunidad. Para probar tu programa deberías crear primero un objeto SalonCasa y un objeto CocinaCasa. Posteriormente un objeto tipo Casa.
Cuando llames al método setSalonCasa() del objeto tipo Casa, escoge en la ventana que se despliega al objeto tipo SalonCasa que creaste previamente. Luego, cuando llames al método setCocina() del objeto tipo Casa, en la ventana que se despliega escoge al objeto tipo CocinaCasa que creaste previamente.

Pruébalo y cualquier cosa estamos aqui para ayudarte si hay alguna duda, o se presentan problemas.

En otro orden de cosas, cuando publiques los códigos, asegúrate que entre [ code ] [ /code ] vaya el código de una sola clase.

Al publicar entonces tres clases como en este ejercicio, quedaría:

[ code ]  aquí iría el código de la clase SalonCasa [ /code ]

[ code ]  aquí iría el código de la clase CocinaCasa [ /code ]

[ code ]  aquí iría el código de la clase Casa [ /code ]

De esta manera queda más ordenado sin que estén los tres códigos juntos.

Saludos!
Título: Re: Relación de uso entre clases Java. Concepto de diagrama de clases (CU00641B)
Publicado por: macarena2405 en 17 de Mayo 2015, 15:17
ahora entendí como probar y también vi que estaban mal las etiquetas :) pero feliz por que pude probar gracias a tus indicaciones :)