Aadfsfs

Disponível somente no TrabalhosFeitos
  • Páginas : 14 (3495 palavras )
  • Download(s) : 0
  • Publicado : 16 de abril de 2013
Ler documento completo
Amostra do texto
Trabalhando com Exceções

Conceito Inovador

Durante a codificação, o programador se depara muitas vezes com a necessidade de fazer várias verificações antes de proceder ao real propósito do código para garantir que as operações seguintes não irão conrromper o funcionamento da aplicação. Por exemplo, verificar que o arquivo que quer ler, de fato existe ou que a conexão à internet realmenteestá aberta. Quando se verifica que a condição é falsa, então o programa não tem como continuar pois as condições essenciais ao seu funcionamento não estão satisfeitas. O conceito de Exceção foi introduzida pela linguagem C++ para tentar libertar o programador de continuamente ter que resolver o que fazer quando uma condição essencial não se verifica e libertar o programador utilizador de umabiblioteca de saber verificar tudo o que tem que ser verificado ao usar essa biblioteca. Com o mecanismo de Exceção o programador pode decidir o que fazer mais à frente no código. Este foi realmente um mecanismo inovador, que praticamente todas as linguagens adotaram   desde então.
A linguagem Java introduziu pela primeira vez o conceito de exceção verificada (Checked Exception). A base para isto éque certas condições são tão importantes que o programador não deve se escusar de tratar o problema imediatamente. Normalmente este tipo de situação existe quando o programa tem que interagir com o ambiente em que executa, por exemplo com o sistema de arquivos ou a rede.

Exceções em Java

Exceção é um evento que acontece durante a execução de um programa corrompendo o curso normal do seufluxo lógico.  Em Java exceções são representadas por uma hierarquia particular de objetos. A classe raiz que representa uma exceção é Throwable.  
|[pic] |
|Ilustração 1: Invocação de método vs lançamento de exceções |


Todo o mecanismo da linguagem relativo a exceções é baseado noconceito de que exceções são lançadas e capturadas. Quando uma exceção acontece, ela é lançada de dentro do método onde se verificou o problema. A exceção ser lançada significa que o fluxo normal do programa e interrompido e o controle volta ao método chamador. Se este método não capturar essa exceção ela será passada ao método que chamou o método chamador. Isso acontece assim, sucessivamente,até que a exceção seja capturada ou ela chegue na JVM, caso em que será capturada automaticamente. Trabalhar com exceções é decidir onde capturar quais exceções e o que fazer uma vez que elas são capturar.

Tipos de Exceção

Existem três categorias de exceções: Erro, Falha e Exceção de Contingência representadas respectivamente pelas classes: Error,  RuntimeException e Exception. Todas estasclasses são filhas de Throwable.
A hierarquia de exceções em Java não tem como objetivo criar implementações ligeiramente diferentes da mesma coisa e sim diferenciar categorias diferentes de exceções. Para cada tipo de exceção existe uma interpretação especial feita pelo compilador que se reflete na forma como o programador tem que lidar com elas.  
|[pic]|
|Ilustração 2: Hierarquia de tipos exceções em Java |


Erros

Erros são exceções tão graves que a aplicação não tem como resolver o problema. São erros todas as classes que descendem diretamente de Error.
É importante que os erros sejam reportados e que se saiba que aconteceram, mas o programa não tem o que fazer para resolver o problemaque eles apontam. Erros indicam que alguma coisa está realmente muito errada no funcionamento do código ou no ambiente de execução. Exemplos de erros são OutOfMemoryError que é lançada quando o programa precisa de mais memória mas ela não está disponível, e StackOverflowError que acontece quando a pilha estoura, por exemplo, quando um método se chama a si mesmo sem nunca retornar.
1.public int...
tracking img