PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br
|
|
- Kátia Vieira Palha
- 8 Há anos
- Visualizações:
Transcrição
1 PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br
2 ROTEIRO 5. Tratamento de Exceções Introdução e conceitos Capturando exceção usando try, catch e finally Propagando exceções não capturadas Lançando exceções Hierarquia de exceções Correspondência de exceções Declaração de exceções Criação de classes de exceção
3 INTRODUÇÃO Exceções (Exceptions) São situações excepcionais e geralmente indesejáveis que podem ocorrer durante a execução de um programa; Podem ser tratadas incluindo-se código adequado no programa não são erros fatais; Mais precisamente, uma exceção é um evento que ocorre durante a execução de um programa que interrompe o fluxo normal de um programa;
4 INTRODUÇÃO Exemplos típicos de exceções: Índice de uma lista (Array) fora do limite permitido; Problemas em operações aritméticas overflows e divisão por zero; Argumentos inválidos na chamada de um método; Falta de memória; Acesso negado a um arquivo; Acesso a rede; Outros...
5 INTRODUÇÃO Exceções Por que tomar cuidado? Basicamente porque exceções não tratadas provocam a finalização do programa; Vantagens: Vantagem 1: Separa o código de manuseio do erro das outras linhas de código; Vantagem 2: Reporta os erros entre os métodos chamados; Vantagem 3: Agrupa os erros por tipos e diferencia entre erros possíveis;
6 INTRODUÇÃO Vantagem 1: Separação do código de manuseio de erro das outras linhas de código Programação tradicional código confuso; Programação Java código mais organizado, elegante e compacto, portanto mais legível;
7 INTRODUÇÃO Vantagem 1: Exemplos de fragmentos de código: ProgramaSemExcecao.java ProgramacaoComExcecao.java AcessoArquivo.java AcessoArquivoSemExcecao.java AcessoArquivoComExcecao.java
8 INTRODUÇÃO Vantagem 2: Reportar os erros ocorridos aos outros métodos chamados Capacidade de reportar o erro ocorrido entre os métodos executados anteriormente até o momento do erro Exemplo: ReportarErros.java
9 INTRODUÇÃO Vantagem 3: agrupar os erros por tipos e diferenciação entre erros Separar erros por categorias ou grupos Exceptions devem ser instâncias da classe Throwable ou subclasse de Throwable.
10 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Exceções Quando uma exceção ocorre, diz-se que uma exceção será lançada; O código que é responsável por fazer algo com a exceção é chamado de manipulador de exceções, em outras palavras, ele captura a exceção lançada;
11 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Palavras reservadas try e catch: try É usada para indicar um bloco de código no qual possam ocorrer exceções; Este bloco de código é chamado de região protegida, ou seja, código de risco; catch Cláusula associada a uma exceção específica ou mais abrangente, que permite manipular a exceção a partir de um bloco de código;
12 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Palavras reservadas try e catch: // programa sem o tratamento de exceção
13 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Palavra reservada finally: Usado para inserir códigos de limpeza Os manipuladores de exceção (catch) são locais inapropriados para a limpeza depois da execução do código try, pois cada manipulador precisará de sua própria cópia do código de limpeza; Exemplo: Ao alocar um socket de rede ou abrir um arquivo em algum local da região protegida, cada manipulador de exceção teria que fechar o arquivo ou liberar o socket; Estes códigos podem ser inseridos em um bloco finally;
14 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Palavra reservada finally: Fechará o código de execução tanto para try quanto para catch; Sempre será executado, se uma exceção for lançada ou não; Mesmo havendo uma instrução de return no bloco try, o bloco finally será executado logo após essa instrução; Então, é o local certo para fechar arquivos, liberar sockets de rede e executar qualquer outra limpeza que o código necessitar;
15 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Palavra reservada finally: A cláusula finally não é obrigatória; É possível escrever um código try sem a cláusula catch, mas nesse caso, é obrigatório a implementação do finally: try { //instruções } finally { //faz a limpeza }
16 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Sintaxe geral: try { // bloco_de_instrucoes A palavra try marca o início do tratamento de exceções; } catch (instância de uma subclasse de Exception) { try deve ser seguido de um ou // bloco_de_instrucoesmais catch OU exatamente um finally; } finally { O bloco finally é executado // bloco_de_instrucoessempre, ocorrendo ou não uma exceção; }
17 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Sintaxe geral: try { // bloco_de_instrucoes } catch (instância de uma subclasse de Exception) { // bloco_de_instrucoes }
18 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Sintaxe geral: try { // bloco_de_instrucoes } catch (instância da subclasse_1 de Exception) { // bloco_de_instrucoes } catch (instância da subclasse_2 de Exception) { // bloco_de_instrucoes }
19 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Sintaxe geral: try { // bloco_de_instrucoes } finally { // bloco_de_instrucoes }
20 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Exemplo de um código inválido: try { //instruções } System.out.println( exemplo de código inválido );
21 CAPTURAR EXCEÇÃO COM TRY, CATCH E FINALLY Outro código inválido: try { //instruções } System.out.println( exemplo de código inválido ); catch (Exception ex) { //tratamento da exceção }
22 EXERCÍCIOS...
23 PROPAGAÇÃO DE EXCEÇÕES NÃO CAPTURADAS Quando um método não fornece uma cláusula catch para uma exceção específica, então este método deve repassar a exceção (a responsabilidade); O que acontece a uma exceção transferida? É necessário entender o conceito de pilha de chamadas;
24 PROPAGAÇÃO DE EXCEÇÕES NÃO CAPTURADAS 1. A pilha de chamadas enquanto o método3() está sendo executado: 4 metodo3() metodo2() chama metodo3() 3 metodo2() metodo1() chama metodo2() 2 metodo1() main() chama metodo1() 1 main() main() inicia Ordem na qual os métodos são colocados na pilha. 2. A pilha de chamadas após o método3() ser finalizado. A execução volta para o método2(): 3 metodo2() metodo2() vai finalizar 2 metodo1() metodo1() vai finalizar 1 main() main() vai finalizar e a JVM terminará a sua execução Ordem na qual os métodos finalizam.
25 PROPAGAÇÃO DE EXCEÇÕES NÃO CAPTURADAS Exemplo:
26 PROPAGAÇÃO DE EXCEÇÕES NÃO CAPTURADAS Exemplo: lançando e capturando a exceção propagada. Se a string for vazia, uma exceção deverá ser lançada e capturada na chamada do método inverter().
27 EXERCÍCIOS...
28 LANÇANDO EXCEÇÕES Métodos podem lançar exceções para indicar condições de erro: public void metodo1() throws IOException {... throw new IOException( causa... ); } // ou public void metodo1() throws IOException, OutraExcecao {... }
29 LANÇANDO EXCEÇÕES Os métodos que os utilizam devem tratar as possíveis exceções: public void metodo2() { try { metodo1(); } catch (IOException e) { //fazer o tratamento } }
30 LANÇANDO EXCEÇÕES throw e throws Se um método não captura (catch) a exception, devese ao menos declará-la; A declaração faz-se através da palavra-chave throws; Declarar significa repassar esta exception para o método chamador;
31 LANÇANDO EXCEÇÕES throw e throws throw gera uma exception; Exige um objeto throwable como argumento throw e throws throw lança a exceção throws declara a exceção
32 LANÇANDO EXCEÇÕES Exemplo: Exceção tratada
33 HIERARQUIA DE EXCEÇÕES Quando uma exceção é lançada, o objeto de um subtipo Exception específico é lançado e inserido no manipulador de exceções como um argumento para a cláusula catch; Por isso, esse formato da cláusula catch: try { //instruções } catch (ArrayIndexOutOfBoundsException ex) { ex.printstacktrace(); } Neste exemplo, ex é a instância de uma classe chamada de ArrayIndexOutOfBoundsException; Assim, como qualquer outro objeto, podemos chamar seus métodos;
34 HIERARQUIA DE EXCEÇÕES Todas as classes de exceções são subtipos da classe Exception; Esta classe é derivada de Throwable Esta deriva de Object
35 HIERARQUIA DE EXCEÇÕES Hierarquia de classes As exceções RuntimeException, Error e todos os seus subtipos são exceções não verificadas, isto é, não precisam ser capturadas ou manipuladas.
36 HIERARQUIA DE EXCEÇÕES De Throwable derivam: Exception e Error Error: as classes que derivam desta representam situações incomuns que são causadas por erros no programa. Exemplo: falta de memória; Embora considerados como condições excepcionais, Error tecnicamente não são exceções porque não derivam da classe Exception; Faz pouco sentido tratá-los, pois a JVM já deve ter feito de tudo para contornar a situação;
37 HIERARQUIA DE EXCEÇÕES Tipos que podem ser lançados através de throws e que podem ser capturados: Exception Error RuntimeException Throwable Os subtipos de Exception são comumente capturados e tratados, já os demais raramente se faz.
38 HIERARQUIA DE EXCEÇÕES Manipulando uma hierarquia de classes Mais de um tipo de exceção pode ser capturada em uma única cláusula catch vale a herança Exemplo: try { //instruções } catch (IndexOutOfBoundsException e) { e.printstacktrace(); } Se algum código do bloco try lançar ArrayIndexOutOfBoudsException ou StringIndexOutOfBoundsException, a exceção será capturada e manipulada.
39 HIERARQUIA DE EXCEÇÕES Manipulando uma hierarquia de classes Este tipo de declaração pode acontecer, mas deve ser usado moderadamente; Especificando o tipo da superclasse, pode-se estar descartando informações valiosas sobre a exceção; Por exemplo: try { //... } catch (Exception e) { } //... Tratar um Exception é muito abrangente. Fica difícil identificar a real exceção.
40 HIERARQUIA DE EXCEÇÕES Correspondência de Exceções Situação: superclasse com vários subtipos A JVM tenta encontrar uma cláusula catch para o tipo da exceção que foi lançada Procura de cima para baixo (do primeiro catch ao último); Caso não seja encontrado, um manipulador para um supertipo da exceção será procurado; Se ainda assim não encontrar uma cláusula catch apropriada, então a exceção será propagada para baixo na pilha de chamadas Este processo é chamado de Correspondência de exceções ;
41 HIERARQUIA DE EXCEÇÕES Exemplo:
42 HIERARQUIA DE EXCEÇÕES Exemplo: Neste caso a exceção lançada foi FileNotFoundException. Mas poderia ser também um EOFException ou outra. Sendo estas subclasses de IOException, teremos a garantia que a exceção será tratada caso não for FileNotFoundException. Como qualquer outra exceção que estende IOException pode ser lançada, isso nos obriga a declará-la. Veja exemplo do próximo slide.
43 HIERARQUIA DE EXCEÇÕES Exemplo: Outras exceções de IOException, diferentes de FileNotFoudException, podem ocorrer. Isso nos obriga tratá-las...
44 HIERARQUIA DE EXCEÇÕES Exemplo: é necessário cuidar a ordem da declaração Como FileNotFoundException é um subtipo de IOException, esta não pode vir depois.
45 DECLARAÇÃO DE EXCEÇÕES Como saber se um método lança uma exceção? Identificar a interface pública do método void metodo(int x) throws Excecao1, Excecao2;
46 DECLARAÇÃO DE EXCEÇÕES Todo método deve tratar todas as exceções verificadas fornecendo uma cláusula catch, ou então listar cada exceção verificada que não tiver recebido tratamento como uma exceção lançada Regra conhecida como tratar ou declarar;
47 DECLARAÇÃO DE EXCEÇÕES Exemplo: Como tem um throw, o método deverá declarar um throws avisando que uma exceção pode ser Lançada. Isto só não é necessário para exceções que estendem RuntimeException.
48 DECLARAÇÃO DE EXCEÇÕES Exemplo: corrigindo o problema... Agora é necessário tratar a exceção ou reportá-la.
49 DECLARAÇÃO DE EXCEÇÕES Exemplo: corrigindo o problema... REPORTANDO... Reportando até o main(). Faz pouco sentido...
50 DECLARAÇÃO DE EXCEÇÕES Exemplo: corrigindo o problema... TRATANDO...
51 DECLARAÇÃO DE EXCEÇÕES Exceções verificadas e não verificadas Verificada: Terá que ser capturada em algum local do código; Se um método que lance uma exceção verificada for chamado, mas não capturar a exceção em algum local, o código não será compilado; Por isso são chamadas de verificadas o compilador verifica para se certificar se elas foram declaradas ou manipuladas.
52 DECLARAÇÃO DE EXCEÇÕES Exceções verificadas e não verificadas Não-verificada: Exceções de tempo de execução são consideradas como não-verificadas; Todas as exceções que não são derivadas de java.lang.runtimeexception são verificadas.
53 HIERARQUIA DE EXCEÇÕES Hierarquia de classes
54 EXERCÍCIOS...
55 CRIANDO CLASSES DE EXCEÇÃO Para criar uma classe de Exceção própria, basta criar uma subclasse de Exception; Ou também criar uma subclasse a partir de subclasses de Exception;
56 CRIANDO CLASSES DE EXCEÇÃO Exemplo: otimizando a classe de exceção Sobrecarregando os construtores de MinhaExcecao, é possível simplesmente definir uma mensagem, uma causa ou ambas.
57 CRIANDO CLASSES DE EXCEÇÃO Ao chamar um método com uma exceção declarada, a mesma deverá tratada ou reportada. Se a exceção foi lançada, deverá ser também declarada.
58 CRIANDO CLASSES DE EXTENSÃO Exemplo: usando a classe de exceção otimizada
59 RESUMO Introdução e conceitos Capturando exceção usando try, catch e finally Propagando exceções não capturadas Lançando exceções Hierarquia de exceções Correspondência de exceções Declaração de exceções Criação de classes de exceção
60 REFERÊNCIAS Deitel, H.M.; Deitel, P. J. Java como programar. 3. ed. Porto Alegre: Bookman, 2001.
PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc.
PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 4. Sistemas de Tratamento de Exceções Exceções genéricas Classes de exceções
Leia maisEspecializaçã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 maisAplicaçõ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 maisErros, 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 maisO que é uma Exceção? Call Stack. Java Tratamento de Exceção. de métodos que foram usados até chegar na presente instrução.
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,
Leia maisCapí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 maisEscola 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 maisTratamento 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 mais1.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 maisGuia 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 maisINTRODUÇÃ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 maisJava 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 maisSlide 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 maisJava 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 maisProgramaçã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 maisARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto
Leia maisProgramaçã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 maisFBV - 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 maisAcesso 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 maisPolimorfismo. Prof. Leonardo Barreto Campos 1
Polimorfismo Prof. Leonardo Barreto Campos 1 Sumário Introdução; Polimorfismo; Polimorfismo Java; Métodos Abstratos Java Classes Abstratas Java Exercício - Java Polimorfismo C++ Classe Abstrata C++; Funções
Leia maisCurso 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 maisruirossi@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 maisComandos 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 maisJSP - ORIENTADO A OBJETOS
JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...
Leia maisUNIVERSIDADE 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 maisOrientaçã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 maisImplementando uma Classe e Criando Objetos a partir dela
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe
Leia maisTHREADS EM JAVA. George Gomes Cabral
THREADS EM JAVA George Gomes Cabral THREADS Fluxo seqüencial de controle dentro de um processo. Suporte a múltiplas linhas de execução permite que múltiplos processamentos ocorram em "paralelo" (em computadores
Leia maisLinguagem 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 maisPrototype, 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 maisProgramação Orientada a Objetos Classes Abstratas Técnico em Informática. Prof. Marcos André Pisching, M.Sc.
Classes Abstratas Técnico em Informática, M.Sc. Classes Abstratas 2 Classes Abstratas Abstração Devemos considerar as qualidades e comportamentos independentes dos objetos a que pertencem, isolamos seus
Leia maisPROGRAMAÇÃO ESTRUTURADA. CC 2º Período
PROGRAMAÇÃO ESTRUTURADA CC 2º Período PROGRAMAÇÃO ESTRUTURADA Aula 07: Funções O comando return Protótipo de funções O tipo void Arquivos-cabeçalho Escopo de variáveis Passagem de parâmetros por valor
Leia maisLinguagem de Programação III
Linguagem de Programação III Aula-3 Criando Classes em Java Prof. Esbel Tomás Valero Orellana Da Aula Anterior Classes em Java, sintaxe básica Tipos básicos de dados em Java, como escolher o tipo apropriado
Leia maisEspecificação do 3º Trabalho
Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,
Leia maisNOVIDADES DO JAVA PARA PROGRAMADORES C
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB NOVIDADES DO JAVA PARA PROGRAMADORES C Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o Conceito de Classes e Objetos Capacitar para a criação de objetos simples
Leia maisTratamento de Exceções. LPG II Java. Tratamento de Exceções. Conceito de Exceções. Exemplo
Tratamento de Exceções LPG II Java Tratamento de Exceções Introdução Princípios do tratamento de exceções em Java Cláusula try Cláusula catch Cláusula finally Hierarquia de exceções em Java Considerações
Leia maisDocumentaçã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 maisINF1013 MODELAGEM DE SOFTWARE
INF1013 MODELAGEM DE SOFTWARE Departamento de Informática Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 18 Sockets OLadoServidor O Lado Cliente Múltiplos Clientes 1 Programa Capítulo 18 Sockets
Leia maisChamadas Remotas de Procedimentos (RPC) O Conceito de Procedimentos. RPC: Programa Distribuído. RPC: Modelo de Execução
Chamadas Remotas de Chamada Remota de Procedimento (RPC) ou Chamada de Função ou Chamada de Subrotina Método de transferência de controle de parte de um processo para outra parte Procedimentos => permite
Leia maisSobre o Professor Dr. Sylvio Barbon Junior
5COP088 Laboratório de Programação Aula 1 Java Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr barbon@uel.br 1 Sobre o Professor Dr. Sylvio Barbon Junior Formação: Ciência e Engenharia da Computação (2005
Leia maisIntroduçã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 maisCurso 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 maisJava para Desenvolvimento Web
Java para Desenvolvimento Web Servlets A tecnologia Servlet foi introduzida pela Sun Microsystems em 1996, aprimorando e estendendo a funcionalidade e capacidade de servidores Web. Servlets é uma API para
Leia maisSistemas 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 maisPara 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 maisProgramação para Dispositivos Móveis
Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 04 Anatomia de uma aplicação Android Dalton Martins dmartins@gmail.com São Paulo, Fevereiro, 2012 24/02/12
Leia maisLinguagem 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 Tratamento de Exceções Try Catch Finally Lista de Exercícios Introdução As exceções são uma indicação de um problema
Leia maisProgramaçã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 maisLista 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 maisSISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA
SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA 1. INTRODUÇÃO O conceito de concorrência é o princípio básico para o projeto e a implementação dos sistemas operacionais multiprogramáveis. O sistemas multiprogramáveis
Leia maisOs 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 maisSISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com
- Aula 2-1. PRINCÍPIOS DE SOFTWARE DE ENTRADA E SAÍDA (E/S) As metas gerais do software de entrada e saída é organizar o software como uma série de camadas, com as mais baixas preocupadas em esconder as
Leia maisProfº. Enrique Pimentel Leite de Oliveira
Profº. Enrique Pimentel Leite de Oliveira O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos que incorporam estrutura de dados e um conjunto de operações que manipulam
Leia maisCriando documentação com javadoc
H Criando documentação com javadoc H.1 Introdução Neste apêndice, fornecemos uma introdução a javadoc ferramenta utilizada para criar arquivos HTML que documentam o código Java. Essa ferramenta é usada
Leia maisProgramaçã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 mais2 Diagrama de Caso de Uso
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa
Leia maisSistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação
Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 05 Estrutura e arquitetura do SO Parte 1 Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC,
Leia maisJava. 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 maisCapí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 maisPadrõ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 maisProgramação Orientada a Objetos em Java. Herança
Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Herança Professor: César Melo Slides baseados em materiais preparados
Leia maisCurso de Programação Computadores
3 O Primeiro Programa em C Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 3 O Primeiro Programa em C 3.1 - Introdução Depois dos conceitos
Leia maisAULA 4 VISÃO BÁSICA DE CLASSES EM PHP
AULA 4 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.
Leia maisCurso de PHP. FATEC - Jundiaí. A programação orientada a objetos (object-oriented oriented programming
Curso de PHP FATEC - Jundiaí A programação orientada a objetos (object-oriented oriented programming OOP) é um conjunto de técnicas t para organizar o código c em torno de entidades ou objetos representados
Leia maisQuando 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 maisArquitetura de Rede de Computadores
TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador
Leia maisProf. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO
Conceitos básicos e serviços do Sistema Operacional Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Tipos de serviço do S.O. O S.O.
Leia maisProf.: Roberto Franciscatto. Capítulo 1.1 Introdução
Sistemas Operacionais Prof.: Roberto Franciscatto Capítulo 1.1 Introdução Tipos de Sistemas Operacionais Sistemas Monoprogramáveis / Monotarefa Voltados tipicamente para a execução de um único programa.
Leia maisTratamento de Exceções. Java Avançado. Tratamento de Exceções. Conceito de Exceções. Exemplo
Tratamento de Exceções Java Avançado Tratamento de Exceções Roberto Vedoato vedoato@joinville.udesc.br Introdução Princípios do tratamento de exceções em Java Cláusula try Cláusula catch Cláusula finally
Leia maisSistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 04 - Concorrência. Cursos de Computação
Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 04 - Concorrência Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC, 2007. Mono x Multiprogramação
Leia maisProgramação Na Web. Linguagem Java Parte II. break com o nome do bloco. Sintaxe. Nome do bloco. Termina o bloco. António Gonçalves ...
Programação Na Web Linguagem Java Parte II Sintaxe António Gonçalves break com o nome do bloco Nome do bloco Termina o bloco class class Matrix Matrix { private private int[][] int[][] mat; mat; public
Leia maisTratamento de Exceção. Tratamento de Exceções. Vantagens de TE. Exemplos de Exceções. Exemplo: Divide1 (sem TE)
DCC / ICEx / UFMG Tratamento de Exceção Tratamento de Exceções Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Uma exceção é uma indicação de problema na execução do programa Exceção foge ao fluxo
Leia maisAula 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 maisExercí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 maisComo 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 maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato
Leia maisCurso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura
UFPI CCN DIE Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura O projeto Desenvolver um compilador de um subconjunto básico da linguagem PORTUGOL.
Leia maisEsta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi
5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem
Leia maisOrientação a Objetos
Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.
Leia maisEXERCÍ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 maisA ) 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 maisProgramaçã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 maisCapacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB
Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha
Leia maisBC0505 Processamento da Informação
BC0505 Processamento da Informação Assunto: Modularização de código e passagem de parâmetros Aula Prática: 4 Versão: 0.2 Introdução Modularização No Java, como em outras linguagens de Programação Orientadas
Leia maisSISTEMAS 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 maisGuia de utilização da notação BPMN
1 Guia de utilização da notação BPMN Agosto 2011 2 Sumário de Informações do Documento Documento: Guia_de_utilização_da_notação_BPMN.odt Número de páginas: 31 Versão Data Mudanças Autor 1.0 15/09/11 Criação
Leia maisProgramação Orientada a Objetos em Java
Programação Orientada a Objetos em Java Rone Ilídio da Silva Universidade Federal de São João del-rei Campus Alto Paraopeba 1:14 1 Objetivo Apresentar os principais conceitos de Programção Orientada a
Leia maisReuso com Herança a e Composiçã
Java 2 Standard Edition Reuso com Herança a e Composiçã ção Helder da Rocha www.argonavis.com.br 1 Como aumentar as chances de reuso Separar as partes que podem mudar das partes que não mudam. Exemplo:
Leia maisMemory Leak em Java?
1 Memory Leak em Java? Saiba como memory leaks se manifestam em Java e como evitá-los Sobre o Autor Carlos Eduardo G. Tosin (carlos@tosin.com.br) é formado em Ciência da Computação pela PUC-PR, pós-graduado
Leia maisSistemas Operacionais
Sistemas Operacionais Sistemas Operacionais Prof. Marcelo Sabaris Carballo Pinto Gerenciamento de Dispositivos Gerenciamento de Dispositivos de E/S Introdução Gerenciador de Dispositivos Todos os dispositivos
Leia maisMódulo 07 Características Avançadas de Classes
Módulo 07 Características Avançadas de Classes Última Atualização: 15/06/2010 1 Objetivos Descrever variáveis, métodos e iniciadores static Descrever a semântica do modificador final em classes, métodos
Leia maisArquitetura de Computadores. Tipos de Instruções
Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada
Leia maisDAS5102 Fundamentos da Estrutura da Informação
Pilhas A estrutura de dados Pilha emula a forma de organização de objetos intuitiva que é utilizada diariamente nos mais diversos contextos da vida humana. Containeres são empilhados e desempilhados diariamente
Leia maisResolução da lista de exercícios de casos de uso
Resolução da lista de exercícios de casos de uso 1. Explique quando são criados e utilizados os diagramas de casos de uso no processo de desenvolvimento incremental e iterativo. Na fase de concepção se
Leia mais