| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/08/2009 19:52:39
|
alessandromds
Smalltalk
![[Avatar]](/images/avatar/912a6a926b8dcba4d0e28cc3d3d288f4.png)
Membro desde: 06/07/2009 14:39:32
Mensagens: 4
Offline
|
Boa noite pessoal,
fiquei meio confuso quando estudei a parte de tratamento de exceções para a certificação Java SCJP 5 no livro da Kathy,
não consegui entender muito bem as diferenças entre exeções verificadas e não verificadas,
e como diferencia-las no código, pois há questões sobre Override de métodos onde as exeções são muito importantes,
gostaria que alguém pudesse me ajudar a esclarecer esses pontos, !
|
Alessandro Marcon - Estágiario Java Web |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/08/2009 02:58:16
|
taaqui
JavaEvangelist
![[Avatar]](/images/avatar/13b96a16c5db9bc9de8f05b6f74a5d96.jpg)
Membro desde: 05/02/2008 12:25:07
Mensagens: 300
Localização: Rio de Janeiro
Offline
|
Exceções no exame é uma coisa muito básica de se pegar, existe alguns pontos crucias que você pegando não tem muito misterio, vou citar alguns links aqui.
http://pt.wikipedia.org/wiki/Tratamento_de_exce%C3%A7%C3%A3o
http://camilolopes.wordpress.com/2009/02/04/tratamento-de-excecoes-em-java/
http://www.infoblogs.com.br/view.action?contentId=12220&Excecoes-no-Java.html
http://www.devmedia.com.br/articles/viewcomp.asp?comp=3937
http://sergiotaborda.wordpress.com/java/trabalhando-com-excecoes-conceitos/
http://lucabastos.blogspot.com/2007/06/tratamento-de-excees-parte-1-um-pouco.html
http://lucabastos.blogspot.com/2007/06/tratamento-de-excees-parte-2-mudanas-no.html
http://lucabastos.blogspot.com/2007/06/tratamento-de-excees-parte-3-discusso.html
http://java.sun.com/javase/6/docs/api/java/lang/Exception.html
http://java.sun.com/javase/6/docs/api/java/lang/RuntimeException.html
isso já basta, leia todos e nunca mais teŕa duvidas sobre exceções na vida.
This message was edited 2 times. Last update was at 06/08/2009 03:06:53
|
SCJP-SCWCD-SCBCD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/08/2009 07:50:03
|
Marcio_Nogueira
JWizard
![[Avatar]](/images/avatar/0447abe5b3fbb484f70517e8a1091b4e.jpg)
Membro desde: 21/05/2007 20:14:54
Mensagens: 2781
Localização: xxxxxxxxxxxxxxxxxxxxxxxxxx
Offline
|
Pelo que me parece, a diferença está entre exceçoes e erros.
Uma exception é um comportamento não previsto que podemos tratar(capturar), já o erro não é possivel ser tratado.
|
MBA em Desenvolvimento de Sistemas em Ambiente Web
Bacharel em Desenho Industrial / Programação Visual
Marcio Nogueira C. Pinto |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/08/2009 07:59:38
|
bigjoe
JavaChild
![[Avatar]](/images/avatar/45d5c43856059a4f97d43d6534be52d0.jpg)
Membro desde: 20/10/2006 14:30:40
Mensagens: 103
Localização: Rio de Janeiro
Offline
|
Alessandro,
respondendo de forma sintética às suas dúvidas:
- exceções verificadas são exceções que obrigatoriamente precisam ser tratadas, como num try/catch. Em teoria, são as exceções cuja ocorrência é provável. Por exemplo, quase todas de I/O.
- exceções não verificadas são aquelas que não obrigam o desenvolvedor a tratá-las, mas que mesmo assim podem ser lançadas em Runtime (não por acaso, esse tipo de exceção é filha de java.lang.RuntimeException). Conhece NullPointerException?
- Para diferenciá-las no código, não há macete, só estudo. A única dica que me vem a cabeça é I/O, onde a grande maioria é checked.
- overriding: um método que faz override pode ter a mesma visibilidade ou maior e nenhuma ou exceções menos amplas do que o método original, sendo que unchecked exceptions não entram nessa análise. O método que faz override pode lançar quantas unchecked exceptions quiser, independendo se o original as lança ou não. Imaginar uma pilha deitada, com o + e o - nas pontas me ajudou a firmar o conceito.
De resto, estude bem isso, porque a prova cobra bem essas partes.
Boa sorte!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/08/2009 08:03:33
|
bigjoe
JavaChild
![[Avatar]](/images/avatar/45d5c43856059a4f97d43d6534be52d0.jpg)
Membro desde: 20/10/2006 14:30:40
Mensagens: 103
Localização: Rio de Janeiro
Offline
|
Marcio_Nogueira wrote:Pelo que me parece, a diferença está entre exceçoes e erros.
Uma exception é um comportamento não previsto que podemos tratar(capturar), já o erro não é possivel ser tratado. 
O Error pode ser tratado, mas não deve ser por uma questão de boas práticas. Errors são eventos catastróficos gerados na JVM (exceto o AssertionError), que o programa não deveria nem tentar tratar.
Eles são passíveis de tratamento porque se você der um catch num Throwable, o Error também é capturado, pois é filho daquela.
Só fiz essa ressalva semântica porque se o colega que criou o tópico for fazer a prova, é bom ele saber desse detalhe.
Grande abraço!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/08/2009 08:12:22
|
alessandromds
Smalltalk
![[Avatar]](/images/avatar/912a6a926b8dcba4d0e28cc3d3d288f4.png)
Membro desde: 06/07/2009 14:39:32
Mensagens: 4
Offline
|
Obrigado bigjoe, e como voce mesmo disse a prova cobra bastante essas partes, que muitos consideram "detalhes", mas que podem fazer você perder muitas questões se não estiver bem esclarecido quanto a "detalhes" !
Valeu !
|
Alessandro Marcon - Estágiario Java Web |
|
|
 |
|
|