Preparação OCPJP
Assertions and Exceptions
Mais
informações...
Objetivos da Certificação
● Testar invariantes usando Assertions
● Desenvolver código que trata multiplos tipos
de Exceçõe...
Usando Assertivas
● Assertivas provém uma forma de testar suas
suposições durante o desenvolvimento ou
debug
● Assertivas ...
Usando Assertivas
● Você pode usar assert como uma palavra
chave ou identificador, mas não os 2 ao
mesmo tempo. Para compi...
Usando Assertivas
● Por padrão assertivas são desebilitadas em
tempo de execução. Para habilitá-las, use a
flag -ea ou -en...
Usando Assertivas
● Se você habilita ou desabilita assertivas
usando a flag sem nenhum argumento, você
está habilitando ou...
Usando Assertivas
● Você pode habilitar ou desabilitar assertivas
classe a classe usando a seguinte sintaxe:
java -ea -da:...
Usando Assertivas
● Não use expressões assertivas que causem
efeitos colaterais. Assertivas não tem
garantia de que sempre...
Usando Assertivas
● Assertivas podem ser usadas (mesmo em
métodos públicos) para validar uma código
em particular que nunc...
Try-multi-catch
● Se 2 blocos cath lidam com a exceção da
mesma forma, você pode juntá-los com um
multi-catch usando:
catc...
Try-multi-catch
● Se você pegar uma exceção geral como atalho
para exceções subclasse específica e relançar
a exceção, voc...
Try-with-resources
● Um try-with-resources automaticamente
chama o método close() de qualquer recurso
declarado no try. Ex...
Try-with-resources
● O método close() da interface AutoClosable
lança Exception e deve ser idempotente.
● O método close()...
Try-with-resources
● Se mais de uma exceção é lançada em um
bloco try-with-resources, é adicionada uma
exeção suprimida.
●...
Mais
informações…
Obrigado!
Próximos SlideShares
Carregando em…5
×

Visão geral sobre Assertivas e Exceções no Java7

932 visualizações

Publicada em

Um visão geral sobre Assertivas e Exceções no Java7 como revisão para exame de certificação OCP

Publicada em: Software
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
932
No SlideShare
0
A partir de incorporações
0
Número de incorporações
642
Ações
Compartilhamentos
0
Downloads
1
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Visão geral sobre Assertivas e Exceções no Java7

  1. 1. Preparação OCPJP Assertions and Exceptions
  2. 2. Mais informações...
  3. 3. Objetivos da Certificação ● Testar invariantes usando Assertions ● Desenvolver código que trata multiplos tipos de Exceções em apenas um bloco catch ● Desenvolver código que usa blocos try/catch com recursos (incluindo o uso de classes que implementam a interface AutoClosable
  4. 4. Usando Assertivas ● Assertivas provém uma forma de testar suas suposições durante o desenvolvimento ou debug ● Assertivas são geralmente habilitadas durante os testes, mas desabilitadas durante a implantação.
  5. 5. Usando Assertivas ● Você pode usar assert como uma palavra chave ou identificador, mas não os 2 ao mesmo tempo. Para compilar códigos legados que usam assert como identificador você deve usar a flag -soucr 1.3 junto com o comando javac
  6. 6. Usando Assertivas ● Por padrão assertivas são desebilitadas em tempo de execução. Para habilitá-las, use a flag -ea ou -enableassertions ● Desabilite seletivamente assertivas usando a flag -da ou -disableassentions
  7. 7. Usando Assertivas ● Se você habilita ou desabilita assertivas usando a flag sem nenhum argumento, você está habilitando ou desabilitando assertivas em geral. Você pode combinar habilitar ou desabilitar assertivas em apenas algumas classes ou pacotes e não no restante do código.
  8. 8. Usando Assertivas ● Você pode habilitar ou desabilitar assertivas classe a classe usando a seguinte sintaxe: java -ea -da:ClasseDesabilitada ClasseTeste ● Não use assertivas para validar argumentos em método públicos.
  9. 9. Usando Assertivas ● Não use expressões assertivas que causem efeitos colaterais. Assertivas não tem garantia de que sempre serão executadas, o comportamento de seu programa não deve mudar devido a assertivas estarem habilitadas ou não.
  10. 10. Usando Assertivas ● Assertivas podem ser usadas (mesmo em métodos públicos) para validar uma código em particular que nunca deverá ser executado. Você pode usar assert false; para código que nunca deveria ser alcançado, assim a AssertionError é lançada imediatamente se o assert for executado.
  11. 11. Try-multi-catch ● Se 2 blocos cath lidam com a exceção da mesma forma, você pode juntá-los com um multi-catch usando: catch (Exceptio1 | Exception2 ex){ }; ● Os tipos em multi-catch não podem ser subclasses uns dos outros.
  12. 12. Try-multi-catch ● Se você pegar uma exceção geral como atalho para exceções subclasse específica e relançar a exceção, você ainda pode listar as subclasses específicas na assinatura do método. O compilador irá tratá-los como se você os tivesse listado fora do catch.
  13. 13. Try-with-resources ● Um try-with-resources automaticamente chama o método close() de qualquer recurso declarado no try. Exemplo: try (AutoClosable c = new Recurso()) ● Um bloco try deve ter pelo menos um bloco catch ou um finally, a menos que seja um try-with resources.
  14. 14. Try-with-resources ● O método close() da interface AutoClosable lança Exception e deve ser idempotente. ● O método close() da interface Closable lança IOException e não precisa ser idempotente. ● Os recursos são fechados em ordem inversa a sua criação e antes da execução de um possível bloco catch ou finally.
  15. 15. Try-with-resources ● Se mais de uma exceção é lançada em um bloco try-with-resources, é adicionada uma exeção suprimida. ● O tipo usado em um bloco try-with-resources deve implementar AutoClosable * Closable estende de AutoClosable
  16. 16. Mais informações… Obrigado!

×