Bom dia! Estou recebendo o seguinte erro, ao instanciar uma classe: Default constructor cannot handle exception type Exception thrown by implicit super constructor.
Must define an explicit constructor
Queria saber qual a diferença entre um construtor explícito e implícito?
Construtor implicito é o construtor default, quando vc cria uma classe e nao cria um construtor o java usa o default.
Construtor explicito é quando vc o declara na sua classe criada.
Esse erro provavelmente é que a classe que voce esta herdando tem um contrutor declarado e nesse caso vc tem que criar um na classe filha.
Posta o codigo ae pra ficar mais facil…
amoreiraedu
Então! Valeu o auxílio ajfilho.
Estou tentando instanciar um DAO, que tem um throws SQLException no construtor, isso por que uso PrepareStatment.
publicUsuarioDAO()throwsException{//conexão compartilhada com a superclasse entidadeJuridicaDAO.}
Esta instanciação esta ocorrendo dentro de um código ZUL(ZKOSS), pois quando instancio num arquivo .java este problema não ocorre.
O problema é que se eu tirar o throws do construtor ele não funciona mais.
amoreiraedu
Pessoal, valeu a ajuda de vcs!!!
Mas eu resolvi aqui.
Apenas fiz a chamada ao método lista diretamente e cheguei no que eu queria, que era carregar um listBox do zkoss.
<listboxid="lstCarregaList"multiple="false"rows="1"height="200px"onSelect="onMove()"><listhead><listheaderlabel="Id"width="auto"/><listheaderlabel="Nome"width="auto"/></listhead><listitemforEach="${carregaList}"value="${each}"><listcelllabel="${each.idEntidade}"/><listcelllabel="${each.nome}"/></listitem><zscript><![CDATA[ void onMove(){ if (((Usuario)lstCarregaList.getSelectedItem().getValue()).isAtivo()){ rdAtivo.setSelectedIndex(0); }else{ rdAtivo.setSelectedIndex(1); } if (((Usuario)lstCarregaList.getSelectedItem().getValue()).isRemoto()){ rdRemoto.setSelectedIndex(0); }else{ rdRemoto.setSelectedIndex(1); } } ]]></zscript></listbox>
De qualquer forma agradeço novamente a ajuda de vcs!! Serviu para esclarecer dúvidas com relação a construtores.
K
kika3k
Pelo o q eu conheço, se vc não declarar um construtor, a JVM automaticamente o cria (construtor defaul).
O construtors explícito é qndo vc o declara. Não sei ao certo, mas esse erro pode estar acontecendo,
pois vc está instanciando um construtor sem parâmetro qua não existe. Não sei se é esse o caso.