Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: vgrisales en 19 de Febrero 2015, 22:55

Título: Entrega CU00642B del tutorial java error cannot find symbol - constructor
Publicado por: vgrisales en 19 de Febrero 2015, 22:55
Hola a todos los de aprender a programar aca subo la entrega CU00642B pero tengo un problema en el constructor con parametros al crear los objetos dentro del constructor:

aqui no tengo problemas sin errores en compilacion

salonCasa = new SalonCasa();
cocinaCasa =newCocinaCasa();

pero al agregarle los parametros de consulta dentro de los objetos creados:


salonCasa =new SalonCasa(objetoSalonCasa.getNumeroDeTelevisores(),objetoSalonCasa.getTipoSalon());
cocinaCasa = new CocinaCasa(objetoCocinaCasa.getEsIndependiente().objetoCocinaCasa.getNumeroDeFuegos());

me aparece un error que dice cannot find symbol - constructor SalonCasa(int,java.lang.String )

si borro el objeto salonCasa Y solo dejo el objeto cocinaCasa  me aparece esto

cannot find symbol - constructor CocinaCasa (int ,boolean)

agradezco mucho la ayuda prestada

adjunto codigo

SalonCasa.
Código: [Seleccionar]
public class SalonCasa {

    private int  numeroDeTelevisores;
    private String tipoSalon;

    public SalonCasa(){

        numeroDeTelevisores = 0;
        tipoSalon = "Desconocido";

    }

    public void setNumeroDeTelevisores(int valorNumeroDeTelevisores){ numeroDeTelevisores = valorNumeroDeTelevisores;}

    public void setTipoSalon (String valorTipoSalon){tipoSalon = valorTipoSalon;}

    public int getNumeroDeTelevisores(){return numeroDeTelevisores;}

    public String getTipoSalon(){return tipoSalon;}

}

CocinaCasa.
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;}

}

Casa.
Código: [Seleccionar]
public class Casa {

    private double  superficie;
    private String direccion;

    private SalonCasa salonCasa;
    private CocinaCasa cocinaCasa;

    public Casa (){

        superficie = 0;
        direccion = "Desconocido";

        salonCasa = new SalonCasa();
        cocinaCasa = new CocinaCasa();

    }

    public Casa (double valorSuperficie , String valorDireccion, SalonCasa objetoSalonCasa, CocinaCasa objetoCocinaCasa){

        superficie = valorSuperficie;
        direccion = valorDireccion;
        salonCasa =new SalonCasa(objetoSalonCasa.getNumeroDeTelevisores(), objetoSalonCasa.getTipoSalon());
        cocinaCasa = new CocinaCasa(objetoCocinaCasa.getNumeroDeFuegos(), objetoCocinaCasa.getEsIndependiente());

    }
}
Título: Re:Entrega CU00642B
Publicado por: toni_apr en 20 de Febrero 2015, 18:59

Hola vgrisales

Si, tu instrucción:
    salonCasa =new SalonCasa(objetoSalonCasa.getNumeroDeTelevisores(),objetoSalonCasa.getTipoSalon());
en este caso debes cambiarla por:
    salonCasa =new SalonCasa();

¿Por qué?. Porque tu clase SalonCasa tiene un constructor sin parámetros (paréntesis vacíos)
Tienes que hacer el mismo cambio para cocinaCasa

Luego te faltará definir los atributos set y get de los cuatro atributos de la clase Casa.

Saludos