Capítulo 7. Asserções  Introdução  Sintaxe das asserções  Executando sua aplicação  Ativando e desativando asserções 2.

Slides:



Advertisements
Apresentações semelhantes
Modelagem de Estados.
Advertisements

Utilitários Marco Antonio. Enum Como o nome sugere, é uma enumeração de opções para uma determinada situação A principal vantagem é limitar as opções.
Métodos, Parâmetros, Argumentos e Contratos
Prof. Thiago Pereira Rique
PLANILHA DE CALCULO.
(C) 2010 Pearson Education, Inc. Todos os direitos reservados. Os programas que obtêm certos tipos de recursos devem retorná-los ao sistema explicitamente.
Análise e Projeto de Sistemas
Introdução à Computação - Jorge Macêdo
Run Time Safety Checking MO828 – Tópicos em Engenharia de Software II Profa. Eliane Martins.
Algoritmos com seleção
Wagner Santos C. de Jesus
Capítulo 16 Applets.
Orientação a Objetos Classes
Classes e objetos P. O. O. Prof. Grace.
Tópicos Tipos de Dados Variáveis por Valor Variáveis por Referência
Diagrama de Estados.
Programação I Caderno de Exercícios Nome.
Introdução ao Teste Unitário com JUnit
JAVA: Conceitos Iniciais
Classes, Objetos e Encapsulamento
Linguagem de Expressão (EL)
Unidade I: “Dê um mergulho rápido”
Desenvolvimento de Sistemas Orientados a Aspectos
Laboratório I Mateus Raeder Material baseado nos originais da
Linguagem de Programação JAVA
Prof. Daniel Aula 03.  Criar Projeto  Criar Pacote  Criando classes  Meu primeiro programa  Compilar  Comentários  Variáveis.
Classes, Objetos, Atributos e Métodos JAVA
Os métodos equals() e hashCode()
Capítulo 5 Garbage Collector.
Funções Lógicas SE E OU NÃO
UML e Java, Introdução AB,20001 Diagrama de Classes UML e JAVA Problema Existem diversos tipos de contas bancárias. Todas as contas têm um atributo saldo.
Programação Orientada à Objetos
Estrutura de Decisão Multipla
Simone Sawasaki Tanaka
Aulas 2 e 3 – Java – Prof. Marcelo Heitor # O método main e argumentos na linha de comando; # Fluxo padrão de entrada e saída; # A classe JOptionPane;
Aula 2 Igor Ebrahim (ies) if669 - Introdução à Programação Monitoria de IP.
Programação I Aula 5 (Instruções de Repetição) Prof. Gilberto Irajá Müller Última atualização 24/3/2009.
PROGRAMAÇÃO ORIENTADA A OBJETOS
Tratamento de Exceções
Introdução Teste Unitário com JUnit
Introdução às Java Threads
Unified Modeling Language Professor Mário Dantas A NÁLISE O RIENTADA A O BJETOS Nov/2010.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Capítulo 6 Exceções.
Comandos de Condição Aula 1 1. Introdução Até agora, todos os algoritmos que fizemos têm um fluxo de execução único. As instruções executadas são sempre.
RUP - Cap. 3 – Processo Dirigido por Caso de Uso
Automação de Testes de Software
Linguagens de Programação II
Capítulo 9 Arquivos JAR.
Certificação Marco Antonio. Introdução A compreensão desse capítulo é muito importante pois trata de um assunto essencial em qualquer linguagem de programação,
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Introdução aos Computadores e Programação DI-FCT-UNL-2003/2004
Laboratório I Mateus Raeder. Mateus Raeder – abril de 2010 Expressões booleanas  Tipo boolean -Tipo de dado primitivo -Possui os valores: true e false.
SISTEMAS DE INFORMAÇÃO Análise de Sistemas II 2010/01 UNIPAC – Araguari FACAE - Faculdade de Ciências Administrativas e Exatas.
Paulo Borba Centro de Informática Universidade Federal de Pernambuco Exceções.
Modelação Aula T15 Modelação Conceptual de Sistemas Revisão do Comportamento OCL – Object Constraint Language José Borbinha.
BCC221 Programação Orientada a Objetos Prof. Marco Antonio M. Carvalho 2014/2.
Profa. Maria Augusta Constante Puget
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Programação para Web I AULA 4 ESTRUTURAS DE CONTROLE.
OCLE Object Constraint Language Environment Fábio Moura CIn-UFPE.
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Programação Computacional Profa. Madeleine Medrano
Fundamentos de Engenharia de SW Diagramas da UML Usados no Projeto de Software.
1 Estruturas de Controle Algoritmos Algoritmos –Série de ações em uma ordem específica As ações executadas Ordem na qual as ações são executadas.
AULA DE Nº 08 FUNÇÃO SE FLUXO DE CAIXA PROGRAMADO (MACROS) MONITORES: WILLIAMS / DAVID
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
LOOPS EM JAVA Prof. André Aparecido da Silva
Transcrição da apresentação:

Capítulo 7

Asserções  Introdução  Sintaxe das asserções  Executando sua aplicação  Ativando e desativando asserções 2

Introdução  Asserções são pequenas expressões aplicadas pelo desenvolvedor ao longo do código para validar o comportamento da aplicação.  Uma asserção trata-se de uma expressão booleana que o programador acredita ser verdadeira naquele ponto do código e, caso não seja, a aplicação dispara um erro durante sua execução. 3

Introdução Cliente cli = cn.obterCliente(); assert cli != null; Conta con = new Conta(); processarSaldo(con); assert con.getSaldo() > 0 : “Saldo não deve ser negativo”; 4

Sintaxe das asserções  assert Realiza a verificação da expressão especificada. Caso a expressão seja verdadeira, nada ocorre e o fluxo da aplicação segue normalmente como se esta instrução não existisse. Caso a expressão seja falsa, é disparado um java.lang.AssertionError, sinalizando que a condição não foi atendida. 5

Sintaxe das asserções  assert : Realiza a verificação da expressão especificada. Caso a expressão seja verdadeira, nada ocorre e o fluxo da aplicação segue normalmente como se esta instrução não existisse. Caso a expressão seja falsa, é disparado um java.lang.AssertionError contendo a mensagem de erro definida por. 6

Executando sua aplicação  Quando executamos pelo modo normal uma aplicação java que possuir asserções, estas são totalmente ignoradas pelo JVM  Para informar ao JVM que desejamos validar as asserções, é necessário utilizar o argumento -enableassertions ao executar sua aplicação, ou simplesmente -ea java -enableassertions OlaMundo ou java -ea OlaMundo 7

Ativando e desativando asserções  Ao executar sua aplicação, podemos também solicitar a verificação parcial das asserções, considerando apenas uma ou mais classes ou pacotes a serem validados  Para isto contamos também com a ajuda do argumento -disableassertions ou simplesmente -da 8

Ativando e desativando asserções java -ea:br.com.tabajara.Cliente br.com.tabajara.Start  Executa a classe br.com.tabajara.Start (esta deve conter o método main) realizando a verificação de asserções somente na classe br.com.tabajara.Cliente quando esta for chamada. 9

Ativando e desativando asserções java -ea:br.com.tabajara... br.com.tabajara.Start  Executa a classe br.com.tabajara.Start realizando a verificação de asserções somente nas classes que pertencem ao pacote br.com.tabajara ao a algum de seus subpacotes. 10

Ativando e desativando asserções java-ea:br.com.tabajara... -ea:br.com.utils... -da:br.com.tabajara.Cliente br.com.tabajara.Start  Executa a classe br.com.tabajara.Start realizando a verificação de asserções nas classes dos pacotes e subpacotes de br.com.tabajara e br.com.utils, mas não na classe br.com.tabajara.Cliente 11