O que é uma Exceção? Call Stack. Java Tratamento de Exceção. de métodos que foram usados até chegar na presente instrução.

Tamanho: px
Começar a partir da página:

Download "O que é uma Exceção? Call Stack. Java Tratamento de Exceção. de métodos que foram usados até chegar na presente instrução."

Transcrição

1 Java Tratamento de Exceção O que é uma Exceção? n Uma exceção é um evento que ocorre durante a execução do programa que interrompe o fluxo normal de instruções. n Quando um erro acontece em um método, o método cria um objeto e o transfere para o sistema. n O objeto, chamado de exception object, contem informações sobre o erro, incluindo o tipo e o estado do programa quando o erro aconteceu. n Criar um exception object e transferi-lo para o sistema é chamado de throwing an exception. Call Stack n Call Stack, ou pilha de chamada, é a lista de métodos que foram usados até chegar na presente instrução. n Depois que um método lança uma exceção (throws an exception), o sistema tenta encontrar alguém para tratá-la na ordem inversa de chamada dos métodos no call stack. 1

2 Call Stack Exception Handler n Exception Handler é o método que é capaz de tratar uma exceção. n Quando o tratamento apropriado é encontrado o objeto é passado para este método. n Um tratamento é dito apropriado se o tipo do objeto lançado corresponde ao tipo que pode ser tratado. n É dito então que o método catch the exception. n Se o sistema não encontra um método apropriado o sistema é terminado. Vantagens n Separa o tratamento de exceção do código regular ; n Propaga os erros pelo Call Stack; n Como as exceções são objetos eles podem ser tão específicos quanto necessários ou genéricos (empregando classes base). 2

3 Especificação para Catch n O código que pode lançar exceções deve estar contido em: Um bloco try que capture este tipo de exceção; e o método deve especificar que pode lançar um exceção e qual tipo. n O código que não atenda às especificações acima não será compialdo. Hierarquia de Classes Classes Error e Exception n Error: está classe é empregada para erros que o programa não será capaz de tratar. n Exception: a maioria dos programas irá lançar e tratar exceções derivadas desta classe. RuntimeException: está classe derivada de Exception são lançadas quando ocorrem erros na Java Virtual Machine durante a execução do programa. 3

4 Tipos de Exceções em Java n Checked: São exceções que podem ser contornadas. Devem ser declaradas pelos métodos que as lançam e devem ser tratadas (a menos que sejam passadas a diante). (IOException) n Unchecked: São exceções que não podem ser contornadas. Não precisam ser tratadas, pois o sistema as trata. (Error e RuntimeException) Os Três tipos de Exceção n Checked exception: são condições excepcionais que podem ser facilmente antecipadas. o aplicativo é capaz de se recuperar destas condições; devem estar contida num bloco try. Só não são deste tipo as Error, RuntimeException, e suas classes derivadas. Os Três tipos de Exceção n Error: são condicções excepcionais externas ao aplicativo; o aplicativo não é capaz de antecipar o se recuperar destas condições; não precisam estar contidos em blocos try. são representados pelas classes Error e suas classes derivadas. 4

5 Os Três tipos de Exceção n Runtime exception: são condições excepcionais internas ao programa que, normalmente, não podem ser antecipadas ou o programa se recuperar; geralmente indicam um bug do programa; não precisão estar contidas em blocos try. são representados pelas classes RuntimeException e suas classes derivadas. ListOfNumbers.java public class ListOfNumbers { private Vector victor; private static final int SIZE = 10; public ListOfNumbers () { victor = new Vector(SIZE); for (int i = 0; i < SIZE; i++) { victor.addelement(new Integer(i)); public void writelist() { PrintWriter out = new PrintWriter( new FileWriter("OutFile.txt")); // IOException for (int i = 0; i < SIZE; i++) { out.println("value at: " + i + " = " + victor.elementat(i)); //ArrayIndexOutOfBoundsException out.close(); ListOfNumbers.java n Ao tentar compilar o código apresentado aparecerá a mensagem: unreported checked java.io.ioexception; must be caught or declared to be thrown n Esta mensagem é devido ao construtor FileWriter, que lança uma checked exception, IOException. 5

6 ListOfNumbers.java n Não será apresentada uma mensagem sobre elementat(i); n A exceção lançada por esta linha de código é do tipo ArrayIndexOutOfBoundsExceptio n, que é uma unchecked exception, no caso uma runtime excepetion. O bloco try n O primeiro passo para implementar um tratamento de exceção é implementar um bloco try. try { code catch and finally blocks n Para associar uma exceção ao bloco try é necessário acrescentar um bloco catch. O Bloco catch n O bloco catch implementa o tratamento da exceção especificada. n O código no bloco catch será executado somente quando a exceção ocorrer. try { catch (ExceptionType name) { catch (ExceptionType name) { 6

7 O Bloco finally n O bloco finaly é executado sempre, como um bloco de limpeza. try { catch (ExceptionType name) { catch (ExceptionType name) { finally { ListOfNumbers.java - Modificado public void writelist() { PrintWriter out = null; try { System.out.println("Entering try statement"); out = new PrintWriter(new FileWriter("OutFile.txt")); for (int i = 0; i < SIZE; i++) out.println("value at: " + i + " = " + victor.elementat(i)); catch (ArrayIndexOutOfBoundsException e) { System.err.println("Caught " + "ArrayIndexOutOfBoundsException: " + e.getmessage()); ListOfNumbers.java - Modificado catch (IOException e) { System.err.println("Caught IOException: " + e.getmessage()); finally { if (out!= null) { System.out.println("Closing PrintWriter"); out.close(); else { System.out.println("PrintWriter not open"); 7

8 Repassando Exceções n Muitas vezes é interessante especificar quais as exceções que um método pode lançar e não tratá-las. n Isto pode ocorrer por não podermos antecipar o que o usuário da classe que foi declarada irá necessitar. n Para isso devemos especificar as exceções que podem ser lançadas pelo método. public void writelist() throws IOException, ArrayIndexOutOfBoundsException { Como Lançar uma exceção? n Para lançar uma exceção é utilizado o comando throw. throw somethrowableobject; n Só podem ser lançados objetos que sejam de classes derivadas de java.lang.throwable. Stack Trace n O stack trace fornece informações sobre a história de execução da thread corrente; n Lista os nomes das classes e métodos que foram chamados até o ponto onde ocorreu a exceção; n É uma ferramenta de debugging. 8

9 Stack Trace n Através do código abaixo é possível apresentar o conteúdo do stack trace. catch (Exception cause) { StackTraceElement elements[] = cause.getstacktrace(); for(int i=0, n=elements.length; i<n; i++) { System.err.println( elements[i].getfilename() + ":" + elements[i].getlinenumber() + ">> " + elements[i].getmethodname() + "()"); Logando a Exceção n Ao invés de varrer o stack e apresentar o resultado, podem ser utilizados os recursos do pacote java.util.logging; n Utilizando estes recursos os resultados são armazenados em um arquivo, que pode ser analisado depois. Logando a Exceção try { Handler handler = new FileHandler("OutFile.log"); Logger.getLogger("").addHandler(handler); catch (IOException e) { Logger logger = Logger.getLogger("package.name"); StackTraceElement elements[] = e.getstacktrace(); for (int i = 0; n = elements.length; i < n; i++) { logger.log(level.warning, elements[i].getmethodname()); 9

10 Criando Novas Exceções n Quando escolhemos o tipo de exceção a ser lançada, tem-se duas opções: usar uma classe de exceção pre-existente; ou escrever uma nova classe de exceção. n Como saber se deve ser criada uma nova classe de exceção? Criando Novas Exceções n Deve ser criada uma nova classe de exceção se a resposta, para uma das seguintes perguntas, for sim: Nenhuma classe da plataforma Java é capaz de representar a exceção? Irá auxiliar aos usuários diferenciar esta exceção das outras pré-existentes? O seu código lança (throw) exceções que sejam relacionadas entre si? O seu pacote deve ser independente e selfcontained? 10

PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 5. Tratamento de Exceções Introdução e conceitos Capturando exceção usando

Leia mais

Exceções. SCC0504 Programação Orientada a Objetos. Luiz Eduardo Virgilio da Silva ICMC, USP

Exceções. SCC0504 Programação Orientada a Objetos. Luiz Eduardo Virgilio da Silva ICMC, USP SCC0504 Programação Orientada a Objetos Exceções Luiz Eduardo Virgilio da Silva ICMC, USP Parte do material foi obtido com os professores: José Fernando Junior (ICMC/USP) Sumário Introdução Tipos de exceção

Leia mais

Aplicações, durante a execução, podem incorrer em muitas espécies de erros de vários graus de severidade Quando métodos são invocados sobre um objeto:

Aplicações, durante a execução, podem incorrer em muitas espécies de erros de vários graus de severidade Quando métodos são invocados sobre um objeto: Tratamento de Exceções Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Exceções Aplicações, durante a execução, podem incorrer em muitas espécies de erros de vários graus de severidade

Leia mais

Escola Superior de Gestão e Tecnologia. Tratamento de Exceções

Escola Superior de Gestão e Tecnologia. Tratamento de Exceções Escola Superior de Gestão e Tecnologia Tratamento de Exceções Objetivos Compreender como o tratamento de exceção e de erro funciona. Como u4lizar try, throw e catch para detectar, indicar e tratar exceções,

Leia mais

Erros, exceçõ. ções e asserçõ

Erros, exceçõ. ções e asserçõ Java 2 Standard Edition Erros, exceçõ ções e asserçõ ções Helder da Rocha www.argonavis.com.br 1 Controle de erros com Exceções Exceções são Erros de tempo de execução Objetos criados a partir de classes

Leia mais

Capítulo 5. Tratamento de excepções

Capítulo 5. Tratamento de excepções Capítulo 5. Tratamento de excepções 1/20 Índice Indice 5.1 - Excepção 5.2 - Try-Catch-Finally 5.3 - Escalar excepção não tratada 5.4 - Como lançar excepções 2/20 Índice 5.1 Excepção 5.1 - Excepção 5.2

Leia mais

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Especialização em desenvolvimento para web com interfaces ricas Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Objetivos Conceito de exceções Tratar exceções pelo uso de try, catch e

Leia mais

1.6. Tratamento de Exceções

1.6. Tratamento de Exceções Paradigmas de Linguagens I 1 1.6. Tratamento de Exceções Uma exceção denota um comportamento anormal, indesejado, que ocorre raramente e requer alguma ação imediata em uma parte do programa [GHE 97, DER

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem

Leia mais

INTRODUÇÃO 12. DOCUMENTAÇÃO INTRODUÇÃO INTRODUÇÃO

INTRODUÇÃO 12. DOCUMENTAÇÃO INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO 12. DOCUMENTAÇÃO Na plataforma Java SE 7, há cerca de 4000 classes e interfaces disponíveis para utilizarmos em nossas aplicações Podemos visualizar a documentação dessas classes e interfaces

Leia mais

ruirossi@ruirossi.pro.br

ruirossi@ruirossi.pro.br Tratamento de Exceções Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 o Exceção: condição anormal Introdução o Causas: Falhas na implementação Falhas na operação o

Leia mais

Tratamento de Exceções. Alberto Costa Neto DComp - UFS

Tratamento de Exceções. Alberto Costa Neto DComp - UFS Tratamento de Exceções Alberto Costa Neto DComp - UFS [ Conteúdo ] Introdução Hierarquia de Erros e Exceções Erros e Exceções predefinidos Bloco try Bloco finally Cláusula throws Lançando exceções Capturando

Leia mais

Curso de Java Módulo I Exceções, Entrada e Saída Programação Swing Fábio Mengue fabio@unicamp.br Centro de Computação - Unicamp

Curso de Java Módulo I Exceções, Entrada e Saída Programação Swing Fábio Mengue fabio@unicamp.br Centro de Computação - Unicamp Curso de Java Módulo I Exceções, Entrada e Saída Programação Swing Fábio Mengue fabio@unicamp.br Centro de Computação - Unicamp Exceções O termo exception é uma abreviatura da frase exceptional event.

Leia mais

Guia de Fatores de Qualidade de OO e Java

Guia de Fatores de Qualidade de OO e Java Qualiti Software Processes Guia de Fatores de Qualidade de OO e Java Versã o 1.0 Este documento só pode ser utilizado para fins educacionais, no Centro de Informática da Universidade Federal de Pernambuco.

Leia mais

Acesso a Banco. Conexão em Java. Conexão em Java. Programação Orientada a Objetos Profa. Cristiane e Prof. Daniel

Acesso a Banco. Conexão em Java. Conexão em Java. Programação Orientada a Objetos Profa. Cristiane e Prof. Daniel Acesso a Banco Programação Orientada a Objetos Profa. Cristiane e Prof. Daniel As conexões em Java são feitas através de uma ponte que implementa todas as funcionalidades que um banco de dados padrão deve

Leia mais

Tratamento de Erros. Sérgio Luiz Ruivace Cerqueira

Tratamento de Erros. Sérgio Luiz Ruivace Cerqueira Tratamento de Erros Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Agenda Introdução Try, catch, finally Unchecked Exceptions Como levantar exceções Boas práticas O problema Calculadora numero1:

Leia mais

Java Básico. Classes Abstratas, Exceções e Interfaces Prof. Fernando Vanini Ic-Unicamp

Java Básico. Classes Abstratas, Exceções e Interfaces Prof. Fernando Vanini Ic-Unicamp Java Básico Classes Abstratas, Exceções e Interfaces Prof. Fernando Vanini Ic-Unicamp Classes Abstratas construção de uma classe abstrata construção de classes derivadas Classes e Herança Uma classe define

Leia mais

Programação Orientada a Objetos com Java. Prof. Júlio Machado julio.machado@pucrs.br

Programação Orientada a Objetos com Java. Prof. Júlio Machado julio.machado@pucrs.br Programação Orientada a Objetos com Java Prof. Júlio Machado julio.machado@pucrs.br TRATAMENTO DE EXCEÇÕES Tratamento de Exceções O tratamento de exceções de Java envolve vários conceitos importantes:

Leia mais

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em

Leia mais

Programação Estruturada e Orientada a Objetos. Tratamento de Exceções

Programação Estruturada e Orientada a Objetos. Tratamento de Exceções Programação Estruturada e Orientada a Objetos Tratamento de Exceções 2013 O que veremos hoje? Introdução Tratamento de exceções Exercícios Transparências baseadas no material do Prof. Gilbert Azevedo Referencias

Leia mais

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II JAVA Décima Segunda Aula

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II JAVA Décima Segunda Aula Prof. Rogério Albuquerque de Almeida Programação Orientada a Objetos II JAVA Décima Segunda Aula 1 Prof. Rogério Albuquerque de Almeida Programação Orientada a Objeto II Vetores Tratamento de Exceções

Leia mais

Estruturas de Controle

Estruturas de Controle Estruturas de Controle mleal@inf.puc-rio.br 1 Expressões Expressões são as construções básicas de qualquer LP. São utilizadas para a atribuição de valores a variáveis, ou em estruturas de controle condicionais.

Leia mais

Java. Marcio de Carvalho Victorino www.dominandoti.eng.br

Java. Marcio de Carvalho Victorino www.dominandoti.eng.br Java Marcio de Carvalho Victorino www.dominandoti.eng.br 3. Considere as instruções Java abaixo: int cont1 = 3; int cont2 = 2; int cont3 = 1; cont1 += cont3++; cont1 -= --cont2; cont3 = cont2++; Após a

Leia mais

Tratamento de Erro e Javadoc. Professor: Norton T. Roman

Tratamento de Erro e Javadoc. Professor: Norton T. Roman Tratamento de Erro e Javadoc Professor: Norton T. Roman Tratamento de Erro import java.lang.string; import java.io.bufferedreader; import java.io.inputstreamreader; import java.lang.integer; O que vai

Leia mais

[Desenvolvimento OO com Java] Exceções e controle de erros

[Desenvolvimento OO com Java] Exceções e controle de erros Centro Tecnológico Departamento de Informática Prof. Vítor E. Silva Souza http://www.inf.ufes.br/~vitorsouza [Desenvolvimento OO com Java] Exceções e controle de erros Este obra está licenciada com uma

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ

UNIVERSIDADE FEDERAL DO PARANÁ CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 03 APRESENTAÇÃO: Hoje vamos conhecer o comando switch, o bloco try catch;

Leia mais

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Curso Adonai QUESTÕES Disciplina Linguagem JAVA 1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String

Leia mais

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática Folha 1-1 Introdução à Linguagem de Programação JAVA 1 Usando o editor do ambiente de desenvolvimento JBUILDER pretende-se construir e executar o programa abaixo. class Primeiro { public static void main(string[]

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Prof. Kléber de Oliveira Andrade pdjkleber@gmail.com Tratamento de Exceções Quem pensa pouco, erra muito Leonardo da Vinci Exceções!!! 12/09/2011 Prof. Kléber de Oliveira

Leia mais

Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação.

Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação. Introdução Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação. O Log4j é um é um projeto open source distribuído pela Apache

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa é transferido

Leia mais

LOGGING DE EVENTOS COM LOG4J

LOGGING DE EVENTOS COM LOG4J LOGGING DE EVENTOS COM LOG4J por Luiz Gustavo Stábile de Souza O que é logging? Fazer o logging de uma aplicação é uma das possíveis maneiras de debugá-la, registrando em algum meio (arquivo, enviando

Leia mais

Autenticação e Autorização

Autenticação e Autorização Autenticação e Autorização Introdução A segurança em aplicações corporativas está relacionada a diversos aspectos, tais como: autenticação, autorização e auditoria. A autenticação identifica quem acessa

Leia mais

Capítulo 13. Encapsulamento. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 13. Encapsulamento. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra Capítulo 13 Encapsulamento Objetivos do Capítulo Indicar a importância do mecanismo de encapsulamento no contexto do desenvolvimento de software utilizando a programação orientada a objetos. Apresentar

Leia mais

Programação Java. Tratamento de Exceções

Programação Java. Tratamento de Exceções Programação Java Tratamento de Exceções Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Motivações para Exceções Um método pode detectar uma falha mas não estar apto a resolver sua

Leia mais

2 Orientação a objetos na prática

2 Orientação a objetos na prática 2 Orientação a objetos na prática Aula 04 Sumário Capítulo 1 Introdução e conceitos básicos 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2 Objetos 1.4.3 Métodos e atributos 1.4.4 Encapsulamento 1.4.5 Métodos

Leia mais

A ) O cliente terá que implementar uma interface remota. . Definir a interface remota com os métodos que poderão ser acedidos remotamente

A ) O cliente terá que implementar uma interface remota. . Definir a interface remota com os métodos que poderão ser acedidos remotamente Java RMI - Remote Method Invocation Callbacks Folha 9-1 Vimos, na folha prática anterior, um exemplo muito simples de uma aplicação cliente/ servidor em que o cliente acede à referência remota de um objecto

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Marcelo Lobosco DCC/UFJF Comunicação em Sistemas Distribuídos Aula 06 Agenda Modelo Cliente-Servidor (cont.) Invocação Remota de Método (Remote Method Invocation RMI) Visão Geral

Leia mais

Java : Comunicação Cliente-Servidor.

Java : Comunicação Cliente-Servidor. Java : Comunicação Cliente-Servidor. Objetivo: Capacitar o aluno a desenvolver uma aplicação servidora para múltiplos clientes. Apresentar as classes Socket e ServerSocket, classes de fluxo de dados, a

Leia mais

Exercícios de Revisão Java Básico

Exercícios de Revisão Java Básico Exercícios de Revisão Java Básico (i) Programação básica (estruturada) 1) Faça um programa para calcular o valor das seguintes expressões: S 1 = 1 1 3 2 5 3 7 99... 4 50 S 2 = 21 50 22 49 23 48...250 1

Leia mais

Introdução a Java. Hélder Nunes

Introdução a Java. Hélder Nunes Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais

Leia mais

Tratamento de Exceções

Tratamento de Exceções Tratamento de Exceções Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Introdução Exceções São eventos que

Leia mais

Tratamento de Exceções. Grupo de Linguagens de Programação Departamento de Informática PUC-Rio

Tratamento de Exceções. Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Tratamento de Exceções Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Terminologia Definições: Exceção é a ocorrência de uma condição anormal durante a execução de um método Falha

Leia mais

Capítulo 4. Programação em ASP

Capítulo 4. Programação em ASP Índice: CAPÍTULO 4. PROGRAMAÇÃO EM ASP...2 4.1 REGISTRAR...2 4.1.1 Códigos para configuração do objeto...2 4.1.2 Formulário para transferir dados da impressão digital...3 4.1.3 Código Javascript para registro

Leia mais

FBV - Linguagem de Programação II. Um pouco sobre Java

FBV - Linguagem de Programação II. Um pouco sobre Java FBV - Linguagem de Programação II Um pouco sobre Java História 1992: um grupo de engenheiros da Sun Microsystems desenvolve uma linguagem para pequenos dispositivos, batizada de Oak Desenvolvida com base

Leia mais

Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.

Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this. Aula 2 Objetivos Encapsulamento na linguagem Java; Utilizando a referência this. Encapsulamento, data hiding é um conceito bastante importante em orientação a objetos. É utilizado para restringir o acesso

Leia mais

Padrão Arquitetura em Camadas

Padrão Arquitetura em Camadas Padrão Arquitetura em Camadas Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Definição Estimula a organização

Leia mais

Tratamento de Exceções

Tratamento de Exceções Tratamento de Exceções Carlos Bazilio Isabel Rosseti Depto de Ciência e Tecnologia Pólo Universitário de Rio das Ostras Universidade Federal Fluminense Motivação prever na implementação do sistema situações

Leia mais

Controlando Erros com Exceções

Controlando Erros com Exceções Controlando Erros com Exceções 1 Motivação p O que aconteceria ao tentar chamar o método saca com um valor fora do limite? p O sistema mostraria uma mensagem de erro, mas quem chamou o método saca não

Leia mais

Programação de Computadores II TCC /Turma A 1

Programação de Computadores II TCC /Turma A 1 Programação de Computadores II TCC 00.174/Turma A 1 Professor Leandro A. F. Fernandes http://www.ic.uff.br/~laffernandes Conteúdo: Tratamento de exceções Material elaborado pelos profs. Anselmo Montenegro

Leia mais

Prática em Laboratório N.02 Criando um serviço Web via NetBeans

Prática em Laboratório N.02 Criando um serviço Web via NetBeans Prática em Laboratório N.02 Criando um serviço Web via NetBeans O objetivo deste exercício é criar um projeto apropriado para desenvolver um contêiner que você resolva utilizar. Uma vez criado o projeto,

Leia mais

Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB)

Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB) Uma Introdução à Arquitetura Francisco C. R. Reverbel 1 Copyright 1998-2006 Francisco Reverbel O Object Request Broker (ORB) Via de comunicação entre objetos (object bus), na arquitetura do OMG Definido

Leia mais

Programação Java. com Ênfase em Orientação a Objetos. Douglas Rocha Mendes. Novatec

Programação Java. com Ênfase em Orientação a Objetos. Douglas Rocha Mendes. Novatec Programação Java com Ênfase em Orientação a Objetos Douglas Rocha Mendes Novatec Sumário Agradecimentos... 13 Sobre o autor... 14 Prefácio... 15 Capítulo 1 Introdução à linguagem Java... 16 1.1 Histórico

Leia mais

CURSO DE PROGRAMAÇÃO EM JAVA

CURSO DE PROGRAMAÇÃO EM JAVA CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro

Leia mais

Java Básico. Matrícula de Alunos. Marco Antonio, Arquiteto de Software TJDF ma@marcoreis.eti.br. Novembro/2005

Java Básico. Matrícula de Alunos. Marco Antonio, Arquiteto de Software TJDF ma@marcoreis.eti.br. Novembro/2005 Java Básico Matrícula de Alunos Marco Antonio, Arquiteto de Software TJDF ma@marcoreis.eti.br Novembro/2005 Objetivos OO: trocar mensagens entre os objetos Exception: tratar exceções Análise: implementar

Leia mais

Bacharelado em Ciência e Tecnologia BC-0505 - Processamento da Informação Teoria Arquivos Prof. Edson Pinheiro Pimentel edson.pimentel@ufabc.edu.

Bacharelado em Ciência e Tecnologia BC-0505 - Processamento da Informação Teoria Arquivos Prof. Edson Pinheiro Pimentel edson.pimentel@ufabc.edu. Bacharelado em Ciência e Tecnologia BC-0505 - Processamento da Informação Teoria Arquivos Prof. Edson Pinheiro Pimentel edson.pimentel@ufabc.edu.br Conceitos Arquivos permitem armazenar dados de maneira

Leia mais

Tratamento de Exceções. Prof. Marcelo Roberto Zorzan

Tratamento de Exceções. Prof. Marcelo Roberto Zorzan Tratamento de Exceções Prof. Marcelo Roberto Zorzan Tratamento de Exceções Aula de Hoje Problema 1 Desenvolva uma aplicação Java que receba como entrada dois valores numéricos, calcule a divisão entre

Leia mais

Java 2 Standard Edition Como criar classes e objetos

Java 2 Standard Edition Como criar classes e objetos Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da

Leia mais

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java Linguagem Java Objetivos Compreender como desenvolver algoritmos básicos em JAVA Aprender como escrever programas na Linguagem JAVA baseando-se na Linguagem Portugol aprender as sintaxes equivalentes entre

Leia mais

Os Sete Hábitos das Exceções Altamente Eficazes

Os Sete Hábitos das Exceções Altamente Eficazes c o l u n a Mundo OO Os Sete Hábitos das Exceções Altamente Eficazes Aprenda os bons hábitos na modelagem de erros de uma aplicação A modelagem no tratamento de erros de uma aplicação é uma atividade que

Leia mais

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção.

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável - O controlo da execução do programa

Leia mais

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread.

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5 THREADS Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5.1 VISÃO GERAL Uma definição mais abrangente para threads é considerá-lo

Leia mais

1. Estude e implemente a classe Exemplo1 apresentada abaixo:

1. Estude e implemente a classe Exemplo1 apresentada abaixo: P. Fazendeiro & P. Prata POO FP09/1 Exceções Uma exceção (Exception) é um sinal gerado pela máquina virtual de Java em tempo de execução indicando uma situação de erro da qual é possível recuperar. O objectivo

Leia mais

O tratamento de erros em Java

O tratamento de erros em Java Exceções JAVA O tratamento de erros em Java É um dos mecanimos mais poderosos para tratar os chamados runtime errors, de modo a que o fluxo normal do programa possa ser mantido. https://techterms.com/definition/runtime_error

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Remote Method Invocation (RMI) Introdução Solução JAVA para Objetos Distribuídos Um objeto existe em uma máquina É possível

Leia mais

CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa

CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS João Gabriel Ganem Barbosa Sumário Motivação História Linha do Tempo Divisão Conceitos Paradigmas Geração Tipos de Dados Operadores Estruturada vs

Leia mais

Manual do Desenvolvedor Criptografia de Arquivos do WebTA

Manual do Desenvolvedor Criptografia de Arquivos do WebTA Manual do Desenvolvedor Criptografia de Arquivos do WebTA Versão 1.4 Índice 1. Objetivo..3 2. Processo..3 3. API de Criptografia - Biblioteca Java..4 3.1 WEBTACryptoUtil..4 3.1.1 decodekeyfile..4 3.1.2

Leia mais

Prototype, um Design Patterns de Criação

Prototype, um Design Patterns de Criação Prototype, um Design Patterns de Criação José Anízio Pantoja Maia Este artigo tem como finalidade compreender o funcionamento do padrão de projeto prototype, serão abordados os participantes que compõe

Leia mais

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Ao projetar uma aplicação Web, é importante considerála como sendo formada por três componentes lógicos: camada

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Padrões de Projeto. Singleton

Padrões de Projeto. Singleton Padrões de Projeto Padrões de Criação Singleton Singleton Assegura que uma classe tenha apenas uma instância e provê um ponto de acesso global a ela 2 Livro Texto: Design Pattern - Elements 1 Motivação

Leia mais

Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Herança, Polimorfismo e Construtores

Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Herança, Polimorfismo e Construtores Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Herança, Polimorfismo e Construtores 1 Exercícios Exercício 1: Construtores e Testes Analise a classe Conta.java, mostrada na

Leia mais

!" # # # $ %!" " & ' ( 2

! # # # $ %!  & ' ( 2 !"# # #$ %!" "& ' ( 2 ) *+, - 3 . / 4 !" 0( # "!#. %! $""! # " #.- $ 111.&( ( 5 # # 0. " % * $(, 2 % $.& " 6 # #$ %% Modelo (Encapsula o estado da aplicação) Implementado como JavaBeans Responde a consulta

Leia mais

Bases de Dados 2007/2008. Aula 9

Bases de Dados 2007/2008. Aula 9 Bases de Dados 2007/2008 Aula 9 1. T-SQL TRY CATCH 2. TRATAMENTO ERROS RAISERROR 3. TRIGGERS 4. EXERCÍCIOS Sumário Referências http://msdn2.microsoft.com/en-us/library/ms189826.aspx (linguagem t-sql) http://www.di.ubi.pt/~pprata/bd/bd0405-proc.sql

Leia mais

Aula 30 - Sockets em Java

Aula 30 - Sockets em Java Aula 30 - Sockets em Java Sockets Sockets são estruturas que permitem que funções de software se interconectem. O conceito é o mesmo de um soquete (elétrico, telefônico, etc...), que serve para interconectar

Leia mais

2. O gerador de código estende DepthFirstAdapter implementando a interpretação que gerará código Jasmin a partir de Smallpascal.

2. O gerador de código estende DepthFirstAdapter implementando a interpretação que gerará código Jasmin a partir de Smallpascal. Geração de Código para Smallpascal a 1. Já estudamos como SableCC faz uso do design pattern visitor para construir compiladores modulares. Vimos também os principais componentes da máquina virtual Java

Leia mais

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:

Leia mais

Lidando de Forma Eficiente com Validações Locais de Objetos

Lidando de Forma Eficiente com Validações Locais de Objetos Lidando de Forma Eficiente com Validações Locais de Objetos Aprenda a construir um mini-framework para validar objetos locais sem afetar a complexidade do código. Autor Paulo César M. N. A. Coutinho (pcmnac@gmail.com):

Leia mais

Introdução à Programação. Interface, Polimorfismo e Dynamic Binding

Introdução à Programação. Interface, Polimorfismo e Dynamic Binding Introdução à Programação Interface, Polimorfismo e Dynamic Binding Interface Programador Java PLENO Possuir sólida experiência em programação Desenvolvimento na linguagem JAVA Webservice, Struts ou JSF(desejável)

Leia mais

JDBC Tópicos avançados de acesso a base de dados relacional

JDBC Tópicos avançados de acesso a base de dados relacional JDBC Tópicos avançados de acesso a base de dados relacional A gestão de instruções SQL em JDBC 1 : proposta de uma arquitectura para evitar a manipulação de código SQL embutido em código JAVA. A arquitectura

Leia mais

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS Campus Cachoeiro de Itapemirim Curso Técnico em Informática Disciplina: Análise e Projeto de Sistemas Professor: Rafael Vargas Mesquita Este exercício deve ser manuscrito e entregue na próxima aula; Valor

Leia mais

Capítulo II Modelos de Programação Distribuída

Capítulo II Modelos de Programação Distribuída Capítulo II Modelos de Programação Distribuída From: Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, Addison-Wesley 2005 From: M. Ben-Ari Principles of Concurrent

Leia mais

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. 1 - Criando uma classe em Java Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. Antes de criarmos a(s) classe(s) é necessário criar o projeto

Leia mais

Mecanismos de Comunicação. Sockets em java (http://java.sun.com/docs/books/tutorial/networking/sockets/)

Mecanismos de Comunicação. Sockets em java (http://java.sun.com/docs/books/tutorial/networking/sockets/) Mecanismos de Comunicação Sockets em java (http://java.sun.com/docs/books/tutorial/networking/sockets/) Sockets o que é? Um socket é um mecanismo de comunicação (dois sentidos) entre dois programas a funcionar

Leia mais

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Aula 09 Introdução à Java Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Java: Sintaxe; Tipos de Dados; Variáveis; Impressão de Dados.

Leia mais

Programação Orientada a Objetos (DPADF 0063)

Programação Orientada a Objetos (DPADF 0063) Programação Orientada a Objetos (DPADF 0063) Aula 7 Tratamento de Exceções Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet

Leia mais

Comandos de repetição For (inicialização; condição de execução; incremento/decremento) { //Código }

Comandos de repetição For (inicialização; condição de execução; incremento/decremento) { //Código } Este documento tem o objetivo de demonstrar os comandos e sintaxes básicas da linguagem Java. 1. Alguns passos para criar programas em Java As primeiras coisas que devem ser abordadas para começar a desenvolver

Leia mais

Documentação Usando o Javadoc

Documentação Usando o Javadoc Documentação Usando o Javadoc Prof. MSc. João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão 2.1 Última Atualização: 04/2005 1 Comentários e Documentação Comentários em Java Existem três tipos de comentários

Leia mais

Curso Java Starter. www.t2ti.com 1

Curso Java Starter. www.t2ti.com 1 1 2 Apresentação O Curso Java Starter foi projetado com o objetivo de ajudar àquelas pessoas que têm uma base de lógica de programação e desejam entrar no mercado de trabalho sabendo Java, A estrutura

Leia mais

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões Professor: Max Pereira http://paginas.unisul.br/max.pereira Ciência da Computação Primeiro Programa em Java public class OlaPessoal

Leia mais

Java para Desktop. Exceções JSE

Java para Desktop. Exceções JSE Java para Desktop Exceções JSE ocorrência que altera o fluxo do programa. As exceções podem ocorrer por falhas de hardware, exaustão de recursos e erros. Usar tratamento de exceções permite detectar erros

Leia mais

Aula 13 Tratamento de Exceções. Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes

Aula 13 Tratamento de Exceções. Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes Aula 13 Tratamento de Exceções Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Exceções; Por que tartar Exceções? Durante a

Leia mais

Slide 1 Deitel/Deitel, 8e. Java Como programar Copyright 2010 Pearson Education

Slide 1 Deitel/Deitel, 8e. Java Como programar Copyright 2010 Pearson Education Java Como Programar, 8/E Slide 1 Slide 2 Slide 3 Métodos genéricos e classes genéricas (e interfaces) permitem especificar, com uma única declaração de método, um conjunto de métodos relacionados ou, com

Leia mais