• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Baderous

Erro na redefinição do construtor por omissão

6 mensagens neste tópico

Tenho uma classe com 6 variáveis de instância: 1 String, 4 doubles e 1 int.

Ao redefinir o construtor por omissão faço:

this("",0.0,0.0,0.0,0.0,0);

e dá o erro: "cannot find symbol - constructor NomeDaClasse(java.lang.String,double,double,double,double,int)"

No entanto, numa classe diferente exactamente com o mesmo tipo de variáveis, não tenho erro nenhum. Se fizer as inicializações uma a uma, também não dá erro. Como resolvo?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pá não tenho a certeza mas acho que tens de ter esse construtor se  não ele não consegue inicializar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pá não tenho a certeza mas acho que tens de ter esse construtor se  não ele não consegue inicializar.

Como assim? Eu redefino sempre o construtor por omissão.

public NomeDaClasse() {...}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Quantos construtores tens?

Basicamente o erro existe porque não existe nenhum construtor que tenha essa assinatura, neste caso terias de ter um construtor que receba esses mesmos paramentros, public NomeDaClasse(String, double, double, double, double, int), assumindo que a ordem dos valores é a mesma que indicaste no início do tópico.

Já agora, o que é o construtor por omissão? Seria mais correcto dizeres que defines sempre um construtor sem argumentos :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Esqueçam, já vi o problema. Faltava-me um parâmetro num dos outros construtores.  :rant_01:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Acontece :), e lá está, o material tem sempre razão, se ele dizia que o construtor não existia então é porque não existia :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora