Baixe o app para aproveitar ainda mais
Prévia do material em texto
Java – Blog Camilo Lopes Sun Certified Java Programmer – SCJP 5 Feeds: Posts Comentários Tratamento de exceções em Java fevereiro 4, 2009 por Camilo Lopes Olá amigos, colegas e leitores! Hoje vou falar um pouquinho sobre o tratamento de exceções em Java. Apresentarei o porque de usar a estrutura e o que é uma exceção. É comum para os iniciantes nos estudos com Java, ao chegar no assunto “Tratamento de Exceções”, não conseguir visualizar a utilidade desse recurso e confundir os resultados com as instruções condicionais. Para não ficar um artigo muito grande e cansativo, teremos outro para complementar o que foi discutido aqui, porém de modo prático. Lets go… (http://camilolopes.files.wordpress.com/2009/02/studying.jpg) Mas a pergunta é: Por que usar tratamento de exceções? Usar tratamento de exceções permite detectar erros e manipular esses erros, ou seja, tratálos. Instruções condicionais & Tratamento de exceções. A grande diferença é que instruções não servem para tratar erros e sim para testar condições. Se X não for verdadeiro, faça Y, ao contrário das exceções que tem como objetivo detectar áreas onde possíveis erros possam acontecer e tratálo. Página 1 de 7Tratamento de exceções em Java | Java - Blog Camilo Lopes 26/08/2014http://camilolopes.wordpress.com/2009/02/04/tratamento-de-excecoes-em-java/ Lembrese: o fato de um programador colocar dentro de uma instrução if…else que se o usuário não digitar os valores válidos, informa que está errado. Isso não quer dizer que aconteceu um erro e ele foi tratado, apenas que a condição esperada não aconteceu ou não foi satisfeita. Agora veremos abaixo a estrutura de como tratar um erro ou exceção: try é usada para indicar um bloco de código que possa ocorrer uma exceção. catch – serve para manipular as exceções, ou seja, tratar o erro. finally – sempre será executado depois do bloco try/catch. O importante é saber que esse bloco sempre será executado (exceto nos casos de encerramento da jvm System.exit()). Veja abaixo as combinações válidas e inválidas para o uso do try{}, cacth{} e finally{} (isso é questão de certificação). Combinações válidas: try{} catch{} try{} finally{} try{} catch{} finally{} Inválidas não Compila: try{} — – catch{} finally{} — try{} finally{} catch{} O que é uma Exceção? É uma ocorrência que altera o fluxo do programa. As exceções podem ocorrer por falhas de hardware, exaustão de recursos e erros. 1. As palavras try e catch servem para informar a JVM o que fazer quando ocorrer uma exceção. 2. Os blocos catch devem aparecer após o try (isso é um requisito); entre os blocos não podem possuir nenhuma instrução. 3. Quando uma exceção é identificada no try{} o restante do código não é executado e não há um retorno para o término do código. Exceções verificadas e não verificadas Toda exceção verificada deriva da class Exception. As não verificadas ou nãochecadas derivam da class RuntimeException. Throwable – é o pai de todas as exceções. Error – não são exceções e sim erros que jamais poderiam ter acontecido. Ex.: estouro da memória. Página 2 de 7Tratamento de exceções em Java | Java - Blog Camilo Lopes 26/08/2014http://camilolopes.wordpress.com/2009/02/04/tratamento-de-excecoes-em-java/ Exception as classes que deveriam aqui, lançam exceções e não erros de programação. Exemplo: tentar abrir um arquivo que não existe. Então é lançado uma exceção verificada, porque a classe de leitura de arquivos deriva de Exception. RuntimeException – são exceções que indicam erros de programas (não de lógica, pois senão não passaria pelo compilador). Esse tipo de exceção é conhecido como não verificada. Sendo assim, não é requisito declarar uma cláusula try{} e catch{}. Ex.: tentar converter “dois” em “2”. Obs.: Implicitamente, todas as classes em java automaticamente já lançam uma exceção de RuntimeException. (http://camilolopes.files.wordpress.com/2009/02/hierarquiaexcecoes.jpg) Figura1 – Hierarquia Exceções (não sou muito bom de desenho rs) Espero que tenham gostado. Um abraço a todos e até o próximo. Abraços! Publicado em Java/DB | 32 Comentários About these ads (http://en.wordpress.com/abouttheseads/) Página 3 de 7Tratamento de exceções em Java | Java - Blog Camilo Lopes 26/08/2014http://camilolopes.wordpress.com/2009/02/04/tratamento-de-excecoes-em-java/ em fevereiro 5, 2009 at 12:26 pm | Resposta em fevereiro 5, 2009 at 6:57 pm | em fevereiro 9, 2009 at 2:28 am | em maio 19, 2009 at 8:11 am | Resposta em maio 22, 2009 at 4:33 pm | em julho 29, 2009 at 4:12 am | em agosto 3, 2009 at 4:59 pm | em agosto 6, 2009 at 4:23 pm | Resposta em agosto 11, 2009 at 12:40 pm | 32 Respostas Marcelo Carvalheiro Muito bom o post. Parabéns. Marcus Muito bom, bem didático. Ronald Opa, saindo do hiper básico do Visual Basic e encarando o Java. Nada como, de cara, achar uma fonte de referência… Voltarei com frequencia Abraços anahita Optimo post. Muito obrigada Garrine Boa noite, tudo bem? Gostei de como abordas os conceitos de Java. Gostaria de receber a partir deste email, tutorias mais actualizados sobre Java + bancos de dados. Abraco Eduardo Muito bom mesmo !!! Ailton Li 3 livros de java com objetivo de intender a filosofia do tratamento de exceção, comecei a ler os livros com dúvidas e terminei de ler com frustração. Mais vc conseguiu exclarecer as dúvidas em poucas linhas, parabems Camilo Lopes olá Ailton, Fico feliz em saber se minha explicação está clara e de fácil entendimento. Eh tanto que meus textos sao informais para facilitar a escrita, claro que nao estou dizendo que para explicar precisa ser informal, porem acho mais fácil e rápido e nesse caso aplicável a blog. abraco e continue frequentando o blog Alcino J Lincoln de Souza Página 4 de 7Tratamento de exceções em Java | Java - Blog Camilo Lopes 26/08/2014http://camilolopes.wordpress.com/2009/02/04/tratamento-de-excecoes-em-java/ em agosto 11, 2009 at 6:38 pm | Resposta em setembro 13, 2009 at 11:18 pm | em setembro 16, 2009 at 1:18 pm | Resposta em dezembro 19, 2009 at 1:39 pm | em dezembro 20, 2009 at 11:56 pm | Resposta em fevereiro 23, 2010 at 11:57 pm | em fevereiro 24, 2010 at 12:06 am | Resposta em fevereiro 24, 2010 at 7:20 pm | em fevereiro 24, 2010 at 7:35 pm | Resposta Valeu Lopes é bem interessante esse tipo de informação bem detalhada para termos segurança do que estamos fazendo, tem muita gente por ai inserindo códigos que mal sabem o que fazem. Gostei muito também da post sobre Conexão tirou algumas duvidas que eu ainda tinha! Obrigado. Camilo Lopes opa! Alcino, obrigado por acessar o blog. Em programacao é sempre bom saber onde estamos e o que estamos fazendo, pois um dia vamos precisar entender o codigo e iai o que fazer? abracos, Francine Mto Bom esse blog. Faço faculdade de ciência da computação e estava com duvidas sobre exceções em java, mas esse post me tirou todas!! Vlw Camilo Lopes olá Francine, obrigado por acessar o blog. E fico feliz em ter ajudado. abraco, Lincoln Muito didatico, agora esta bem mais claro. Parabéns pelo blog. Camilo Lopes opa! obrigado Lincoln! Murilo Muito bom o blog e interessante isso vai me ajudar muito pq eu estou estudando tratamento de exerções e Parabéns. Camilo Lopes olá Murilo, obrigado por acessar o blog e comentar. Aproveitando o momento, estamos em novo endereço veja as atualizações estao acontecendo por lá. abracos, Matheus Oliveira Nem costumo comentar em blogs… Mas esse post vale o elogio! valeu! Camilo Lopes opa! Matheus, Página 5 de 7Tratamento de exceções em Java | Java - Blog Camilo Lopes 26/08/2014http://camilolopes.wordpress.com/2009/02/04/tratamento-de-excecoes-em-java/em março 1, 2010 at 4:54 pm | em abril 7, 2010 at 7:04 pm | em abril 12, 2010 at 8:06 pm | Resposta em setembro 6, 2010 at 1:27 pm | em setembro 25, 2010 at 2:36 am | Resposta em novembro 9, 2010 at 10:10 pm | em novembro 15, 2010 at 3:02 pm | Resposta em maio 25, 2011 at 1:11 pm | em junho 2, 2011 at 2:34 pm | em agosto 23, 2011 at 11:15 am | em setembro 6, 2011 at 5:07 pm | em outubro 12, 2011 at 9:31 pm | Resposta em novembro 25, 2011 at 2:54 pm | Resposta obrigado pelo feedback, fico em saber que o post foi tao legal que motivou vc a comentar . abracos, assim nosso novo endereco veja antonio gomes lacerda Parabens! Você disse em poucas palavras, aquilo que muitos não dizem em muitas. O minimo que posso dizer: ótimo! Luiz Realmente muito bom. Concordo com o comentário acima.. Falou de forma concisa.. Camilo Lopes opa! Pessoal, valeu! Assim nosso novo endereço: aqui abracos lorena OI Caimlo, estou começando em programação em java, e tinha muitas duvidas sobre o try/catch…muito bom seu tutorial e bem didatico parabens \o Camilo Lopes opa! Lorena, obrigado! fico feliz que o post ti ajudou. Luiz Carlos Valeu pelas dicas, o pessoal te agradece não é a toa, estou começando a ver java na Faculdade, confesso que estava com dificuldade, mas li suas dicas e percebo que não é tão complicado, parabéns pelo blog, eu voltarei. Obrigado. Camilo Lopes opa! Luiz, Obrigado, fico feliz que meus posts tem ajudado vc e todos os leitores. o novo endereco do blog é este: http://www.camilolopes.com.br lá há uma série de novos posts, eu mantenho esse aqui, pois sei que muitos ainda conhece o novo endereço. abracos, Antonio Carlos Muito bom o post !!! Sou iniciante no java e esse post foi muito útil para mim. Valeuu!! joselaine Valew pela ajuda… em poucas linhas consegui mostrar bem como funciona o tratamento de exceção e Java.. Antonio Menezes Foi ótimo esse artigo.Explica muito bem! JuuGo(Programador) Hum o post é bom mas poderia ser melhorado. Camilo Lopes opa! Pois eh, eu tb concordo, depois de 2 anos ter escrito ele, olho e consigo ver essa necessidade. Vanderson Página 6 de 7Tratamento de exceções em Java | Java - Blog Camilo Lopes 26/08/2014http://camilolopes.wordpress.com/2009/02/04/tratamento-de-excecoes-em-java/ em fevereiro 27, 2012 at 3:44 am | Velhinho ótimo artigo, me tirou bastante dúvidas quanto try etc…e exeções. Obrigado! Nathalie Maria Estou iniciando no Java, e o blog explicou sem complicar. Obrigada Comments RSS Blog no WordPress.com. O tema MistyLook. Seguir Seguir “Java - Blog Camilo Lopes” Tecnologia WordPress.com Página 7 de 7Tratamento de exceções em Java | Java - Blog Camilo Lopes 26/08/2014http://camilolopes.wordpress.com/2009/02/04/tratamento-de-excecoes-em-java/
Compartilhar