[Duvida] Tratamento de Exceção

5 respostas
W

Gostaria de esclarecer a seguinte situação:

Tenho um metodo que lança um determinada exceção por exemplo:

int teste(int t) throws TesteException{
     
        if(t == 0)throw new TesteException("valor invalido.");

 }


int teste2() throws TesteException{

try{
teste(1);
metodoQuePodeLancaTeste2Exception();
}catch(Teste2Exception exc){
throw new TesteException("teste");
}

}

O que eu gostaria de saber o por que eu não preciso tratar a exceção que o teste() pode lançar?

Att,
Wanderson Carvalho

5 Respostas

D

pq o throw ele não trata…ele LANÇA uma exceção…
itendeu a diferença…
try{ }catch{} , vc trata…
e o throw voce LANÇA…

vlw

A

oi cara, como vai?

gostei da pergunta, veja a minha primeira resposta:

aqui vc tá criando uma exceção sua, veja bem que sua classe está estendendo:
public class SuaPropriaExcecaoException extends RuntimeException{
	
	public SuaPropriaExcecaoException() {
		 super("O valor digitado 0 (zero) não é válido.");
	}
}
aqui vc tá criando um método e tratando com throw new e o nome da exception
public class TestandoTratarExcecao {

	 void metodoTeste(int t){
		if (t == 0)
		throw new SuaPropriaExcecaoException();
	}
}
aqui vc já tá testando a brincadeira sobrescrevendo o construtor
public class ExecutarMetadoTratato {

	public static void main(String[] args) {
		TestandoTratarExcecao t1 = new TestandoTratarExcecao();
		t1.metodoTeste(0);
		
	}
}
A

preciso sair agora mas quando voltar tentarei responder suas outras dúvidas…

qualquer coisa me passar uma mensagem…
AS

W

Eu sei que throw lança uma exceção!!!
O que eu queria entender é por que no try/catch do método teste2,
eu não preciso tratar a exceção lançada pelo método teste(), e sim
apenas a lançada pelo metodoQuePodeLancaTeste2Exception();

Obrigado!

Att,
Wanderson Carvalho

LPJava

para entender tratamento de excecoes tem que viajar um pouco, dar uma olhada nesse meu post: http://camilolopes.wordpress.com/2009/02/04/tratamento-de-excecoes-em-java/

e tem esse mais pratico: http://imasters.uol.com.br/artigo/11674/java/tratamento_de_excecoes_na_pratica/

sem o entendimento do funcionamento a pratica fica bem dificil de pegar.

flw.

Criado 17 de julho de 2010
Ultima resposta 18 de jul. de 2010
Respostas 5
Participantes 4