BCC221 Programação Orientada a Objetos. Prof. Marco Antonio M. Carvalho 2013/1
|
|
- Mateus Carvalho de Escobar
- 5 Há anos
- Visualizações:
Transcrição
1 BCC221 Programação Orientada a Objetos Prof. Marco Antonio M. Carvalho 2013/1
2 Avisos 2
3 3
4 Arquivos) 4
5 Introdução)ao)Java)Reflection) 5
6 Reflexão)é)a)capacidade)de)um)programa)examinar) (ou) introspectar ),)manipular)e)até)mesmo) modificar)sua)própria)estrutura) Em)tempo)de)execução.) Em)certas)situações,)a)necessidade)produção)de) código)pode)explodir) O)código)precisa)reagir)a)vários)cenários)diferentes) Reagir)corretamente)a)diferentes)contextos.) Plugabilidade.) 6
7 Normalmente,)para)garantir)a)plugabilidade)de)um) componente)de)software,)implementamos) interfaces)específicas)e)preparamos)um)mecanismo) de)acoplamento) No)entanto,)isto)pode)não)ser)suficiente)para)garantir)a) plugabilidade.) 7
8 Um)sistema)pode)adaptarMse)dinamicamente)a)diferentes) situações) Por)exemplo,)uma)classe)X)precisa)se)comunicar)com)um) determinado)serviço;) Agora,)a)mesma)classe)precisa)se)comunicar)com)o)mesmo) serviço)utilizando)a)classe)y Métodos)com)nomes)diferentes,)por)exemplo.) Normalmente,)teríamos)que)modificar)nosso)código) manualmente)e)recompilámlo) Usando)reflexão)isto)pode)ser)evitado;) A)aplicação)descobre)quais)são)os)métodos)da)classe)Y)e)os) invoca)dinamicamente;) Com)reflexão,)nem)sequer)o)nome)da)nova)classe)precisaria)ser) incluso)diretamente)no)código.) 8
9 Da)documentação)oficial:) A)reflexão)é)um)recurso)relativamente)avançado) e)deve)ser)utilizado)apenas)por)desenvolvedores) que)possuem)um)forte)embasamento)dos) fundamentos)da)linguagem.)com)esta) advertência)em)mente,)a)reflexão)é)uma)técnica) poderosa)e)pode)permitir)que)os)aplicativos) executem)operações)que)de)outra)forma)seriam) impossíveis.) ) 9
10 Extensibilidade Uma)aplicação)pode)fazer)uso))de)classes)de)terceiros,)externas,) através)da)criação)de)instâncias)de)objetos)de)extensibilidade) através)de)seus)nomes.) BrowsersdeClasseseAutoComplete. Um)browser)de)classes)precisa)listar)todos)os)membros)de)uma) classe;) Ferramentas)de)autocomplete)se)valem)das)informações)de)tipo) para)auxiliar)na)escrita)de)códigos.) DepuradoreseFerramentasdeTeste Depuradores)precisam)ter)a)habilidade)de)examinar)os) membros)privados)de)classes;) Ferramentas)de)teste)podem)fazer)o)uso)de)reflexão)para) sistematicamente)invocar)um)conjunto)de)apis)definidas)em) uma)classe,)de)forma)a)garantir)maior)cobertura)de)um)código) em)teste.)) 10
11 OverheaddePerformance A)reflexão)envolve)resolução)dinâmica)e)por)isto,)otimizações)da)JVM) não)podem)ser)realizadas;) Consequentemente,)a)performance)de)operações)que)usam)reflexão)é) mais)lenta)e)deve)ser)evitada)quando)o)desempenho)é)importante.) RestriçõesdeSegurança A)reflexão)requer)permissões)em)tempo)de)execução)que)podem)não) estar)presentes)quando)a)execução)se)dá)sob)um)gerente)de) segurança;) Esta)é)uma)consideração)importante)para)códigos)que)rodam)em) contextos)restritos)de)segurança,)como)applets.) ExposiçãodeDetalhesInternos A)reflexão)permite)a)escrita)de)códigos)que)seriam)ilegais)em)outros) contextos,)como)por)exemplo)a)listagem)de)membros)privados;) O)uso)desta)técnica)pode)destruir)a)portabilidade,))tornar)o)código) disfuncional)e)quebrar)a)abstração.) 11
12 Presente)no)Java)desde)a)versão)1.1,)o)recurso)de) reflexão)também)é)encontrada)em)outras)linguagens:) PHP;) Python;) Ruby;) ObjectiveMC;) ECMAScript.) A)reflexão)é)também)a)chave)para)a)metaprogramação A)criação)de)programas)que)escrevem)ou)manipulam)outros) programas)(ou)a)si)próprios))como)se)fossem)os)próprios)dados.) 12
13 O)exemplo)abaixo)ilustra)a)criação)de)uma)instância) da)classe)foo)e)a)invocação)do)método)hello.) //Sem reflection new Foo().hello(); //Com reflection Class<?> clazz = Class.forName("Foo"); clazz.getmethod("hello").invoke(clazz.newinstance());) 13
14 O)quê)pode)ser)feito)pelo)Reflection)API?) Obter)a)listagem)de)todos)os)métodos)de)uma)classe) (definidos)ou)herdados)) Tipo,)modificador)de)acesso,)parâmetros)(nomes)e)tipos),)etc.) Obter)informações)sobre)construtores;) Obter)informações)sobre)atributos)de)uma)classe;) Invocar)métodos)conhecidos)apenas)em)tempo)de) execução) Tratando)o)retorno)e)passando)os)argumentos)adequados.) Criar)objetos)de)classe)conhecidas)apenas)em)tempo) de)execução;) Alterar)atributos)destes)mesmos)objetos.) 14
15 As)classes)do)Reflection)estão)armazenadas)no)pacote) java.lang.reflect;) Para)utilizar)estas)classes)é)necessário:) Obter)um)objeto)da)classe)java.lang.Class;) Utilizada)para)representar)classes)e)interfaces)em)execução.)) Class c = Class.forName("java.lang.String"); Class c = int.class; Class c = Integer.TYPE; ) Invocar)um)método)getter)adequado;) Por)exemplo,)getMethodDeclarations().) A)partir)daí,)basta)usar)a)API)Reflection)para)manipular)as) informações.) 15
16 Classe java.lang.reflect.constructor) java.lang.reflect.field) java.lang.reflect.method) java.lang.reflect.modifier) Descrição Fornece)informações)sobre)os)construtores)da) classe.) Fornece)informações)sobre)os)atributos)da)classe.) Fornece)informações)sobre)os)métodos)da)classe.) Fornece)informações)sobre)os)modificadores)de) acesso)da)classe.) 16
17 17
18 import java.lang.reflect.*; public class ReflectionTeste { "public static void main(string args[]) { " try { " "Class c = Class.forName( "java.lang.string" ); " "Method m[] = c.getdeclaredmethods(); " "for (int i = 0; i < m.length; i++) { " "System.out.println( m[i].tostring() ); "} " } " catch (Throwable e) { " " "System.err.println(e); " } } } 18
19 Class cls = Class.forName("java.lang.String"); boolean b1 = cls.isinstance(new Integer(37)); System.out.println(b1); boolean b2 = cls.isinstance(new java.lang.string("teste")); System.out.println(b2);) 19
20 import java.lang.reflect.*; public class Classe1 { "private int funcao1( Object p, int x ) throws NullPointerException { " "if (p == null) " " "throw new NullPointerException(); return x; } public static void main(string args[]) { try { Class cls = Class.forName("Classe1"); Method methlist[] = cls.getdeclaredmethods(); for (int i = 0; i < methlist.length; i++) { "Method m = methlist[i]; "System.out.println("nome = " + m.getname()); "System.out.println("membro da classe = +m.getdeclaringclass()); "System.out.println("modificador = +Modifier.toString(m.getModifiers())); "Class pvec[] = m.getparametertypes();) 20
21 for (int j = 0; j < pvec.length; j++) System.out.println("parâmetro #"+j+" "+pvec[j]); Class evec[] = m.getexceptiontypes(); for (int j = 0; j < evec.length; j++) " System.out.println("exceção #" + j + " " + evec[j]); " System.out.println("tipo de retorno = +m.getreturntype()); " System.out.println("-----"); } } catch (Throwable e) { "System.err.println(e); } } }) 21
22 import java.lang.reflect.*; public class Constructor1 { public Constructor1() { } protected Constructor1(int i, double d) { } public static void main(string args[]) { try { "Class cls = Class.forName("constructor1"); "Constructor ctorlist[] = cls.getdeclaredconstructors(); "for (int i = 0; i < ctorlist.length; i++) { " Constructor ct = ctorlist[i]; " System.out.println("nome = " + ct.getname()); " System.out.println("membro da classe = " + ct.getdeclaringclass()); " Class pvec[] = ct.getparametertypes(); " for (int j = 0; j < pvec.length; j++) " System.out.println("parâmetro #" + j + " " + pvec[j]); " Class evec[] = ct.getexceptiontypes(); " for (int j = 0; j < evec.length; j++) " System.out.println("exceção #" + j + " " + evec[j]); "} } catch (Throwable e) { "System.err.println(e); } } }) 22
23 import java.lang.reflect.*; public class TesteAtributos { private double d; public static final int i = 37; String s = "testing"; public static void main(string args[]) { try { "Class cls = Class.forName("TesteAtributos"); "Field fieldlist[] = cls.getdeclaredfields(); "for (int i = 0; i < fieldlist.length; i++) { " Field fld = fieldlist[i]; " System.out.println("nome atributo = " + fld.getname()); System.out.println("membro da classe = " + fld.getdeclaringclass()); " System.out.println("tipo = " + fld.gettype()); " int mod = fld.getmodifiers(); " System.out.println("modificadores = " + Modifier.toString(mod)); "} } catch (Throwable e) { "System.err.println(e); } } }) 23
24 import java.lang.reflect.*; public class InvocaMetodo { public int ummetodo(int a, int b) { "return a + b; } public static void main(string args[]) { try { "Class partypes[] = new Class[2]; "partypes[0] = Integer.TYPE; "partypes[1] = Integer.TYPE; "Class cls = Class.forName("InvocaMetodo"); "Method meth = cls.getmethod("ummetodo", partypes); "Object arglist[] = new Object[2]; "arglist[0] = new Integer(37); "arglist[1] = new Integer(47); "InvocaMetodo methobj = new InvocaMetodo(); "Object retobj = meth.invoke(methobj, arglist); "Integer retval = (Integer)retobj; "System.out.println(retval.intValue()); } catch (Throwable e) { "System.err.println(e); } } }) 24
25 import java.lang.reflect.*; public class TesteConstrutor { public TesteConstrutor() { } public TesteConstrutor(int a, int b) { "System.out.println("a = " + a + " b = " + b); } public static void main(string args[]) { try { "Class cls = Class.forName("TesteConstrutor"); "Class partypes[] = new Class[2]; "partypes[0] = Integer.TYPE; "partypes[1] = Integer.TYPE; "Constructor ct = cls.getconstructor(partypes); "Object arglist[] = new Object[2]; "arglist[0] = new Integer(37); "arglist[1] = new Integer(47); "Object retobj = ct.newinstance(arglist); } catch (Throwable e) { "System.err.println(e); } } }) 25
26 import java.lang.reflect.*; public class AlteraValorCampo { "public double d; "public static void main(string args[]) { " "try { " " "Class cls = Class.forName("AlteraValorCampo"); " " "Field fld = cls.getfield("d"); " " "AlteraValorCampo f2obj = new AlteraValorCampo(); " " "System.out.println("d = " + f2obj.d); " " "fld.setdouble(f2obj, 12.34); " " "System.out.println("d = " + f2obj.d); " "} " "catch (Throwable e) { " " "System.err.println(e); " "} "} }) 26
27 Class cls = Class.forName("java.lang.String"); Object arr = Array.newInstance(cls, 10); Array.set(arr, 5, "Isto é um teste"); String s = (String)Array.get(arr, 5); System.out.println(s);) 27
28 Vantagens Padronização;) Ganho)de)produtividade;) Minimização)de)erros;) Facilidade)de)Manutenção.) Desvantagens Redução)de)desempenho;) Problemas)por)restrição)de)segurança;) Exposição)da)estrutura)interna)dos)objetos.) 28
29 A)API)Reflection)é)especialmente)útil)porque)permite)a) obtenção)de)informações)sobre)classes)a)partir)do)próprio) nome) Permite)ainda)a)manipulação)destas)informações)em)tempo)de) execução.) Esta)característica)da)linguagem)Java)é)extremamente) poderosa) Não)há)equivalente)em)outras)linguagens,)como)C)ou)C++.) Mais)sobre)o)assunto)em) 29
30 Os)exemplos)desta)aula)foram)retirados)do) site)guj.com.br. )) Disponível)em)) 30
31 Perguntas? 31
32 Prova) Demonstração)do)TP) 32
33 FIM 33
Programação Orientada a Objetos SANTOS, Rafael (PLT)
Programação Orientada a Objetos SANTOS, Rafael (PLT) Possibilita atribuições em sequência na mesma instrução Retorna o valor atribuído Atribuições compostas: incluem a própria variável: +=, *=, -=, etc
Leia maisMsC. João Maria MsC. Liviane Melo
Disciplina: Programação Orientada à Objetos AULA 02 Corpo docente: MsC. Alexandro Vladno Edmilson Campos MsC. Fábio Procópio Esp. Felipe Dantas MsC. João Maria MsC. Liviane Melo 2 Tipo Tamanho Alcance
Leia maisIntrodução à reflexão em Java
Introdução à reflexão em Java 1 O que é a reflexão? Reflexão, o que é? Disponibilização, via API, de informação de tipo (metadata) em tempo de execução. Em Java esta API é composta pelas classes do package
Leia maisAPI JAVA PARA A PERSISTÊNCIA E CRIPTOGRAFIA DE ARQUIVOS DE CONFIGURAÇÃO XML E PROPERTIES
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE INFORMÁTICA CURSO DE ESPECIALIZAÇÃO EM TECNOLOGIA JAVA RICARDO VASSELAI PAULINO API JAVA PARA A PERSISTÊNCIA E CRIPTOGRAFIA DE ARQUIVOS
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisSintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.
Sintaxe Geral Tipos de Dados Comentários Comentários: De linha: // comentário 1 // comentário 2 De bloco: /* linha 1 linha 2 linha n */ De documentação: /** linha1 * linha2 */ Programa Exemplo: ExemploComentario.java
Leia maisProgramaçã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 maisProgramaçã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 maisAtributos e Métodos Estáticos
Atributos e Métodos Estáticos Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Atributos Estáticos Atributos
Leia maisTratamento de Exceção. Programação Orientada a Objetos Java (Rone Ilídio)
Tratamento de Exceção Programação Orientada a Objetos Java (Rone Ilídio) Tratamento de exceção Exceção é uma contração de Evento de Exceção Evento de exceção impede a execução normal de um programa Quando
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 maisProgramação de Computadores II
Programação de Computadores II TCC- 00.174 Profs.: Leandro A. F. Fernandes (A1) & Marcos Lage (B1) & Isabel RosseJ (C1) (Turma A1) www.ic.uff.br/~laffernandes (Turma B1) www.ic.uff.br/~mlage (Turma C1)
Leia maisRecapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }
Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação
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 maisLinguagem de Programação II Implementação
Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Criando objeto Definindo valores para os atributos do objeto Método construtor Definindo valores padrão para os atributos dos
Leia maisProgramação Estruturada e Orientada a Objetos
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Programação Estruturada e Orientada a Objetos Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br
Leia maisSabemos que a classe é responsável por definir a estrutura e o comportamento de seus objetos. Portanto, os objetos são instâncias das classes.
JAVA ENCAPSULAMENTO Na linguagem de programação Java, a classe é o alicerce para o encapsulamento, o qual é definido como uma técnica que faz com que os atributos da classe permaneçam ocultos, pois desta
Leia maisLinguagem de Programação II Implementação
Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa
Leia maisUniversidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java
Guia da Sintaxe do Java TIPOS PRIMITIVOS DE DADOS DO JAVA São os tipos nativos de dados do Java, que podem ser usados na declaração de atributos, variáveis, parâmetros. Tipo primitivo Tamanho Valor padrão
Leia maisUNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS
Professor: Fernando Maia da Mota Orientações Básicas Leia atentamente as instruções para cada questão. A prova deverá ser feita a lápis ou caneta (preta ou azul) em uma folha de rascunho que será fornecida
Leia maisInterfaces POO. Prof. Marcio Delamaro
Interfaces POO Prof. Marcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/41 O que é interface É um template de classe Outras classes podem seguir esse template Chamamos isso
Leia maisProgramação Orientada por Objectos 2010/11. 2º Exame 28 de Junho de 2011
Programação Orientada por Objectos 2010/11 2º Exame 28 de Junho de 2011 Instruções (leia com cuidado): Escreva de forma CLARA o seu nome e número em todas as folhas. O exame contém 8 páginas dividido em
Leia maisExceções. Criando suas exceções
Exceções Criando suas exceções Tratamento de Exceções O tratamento de exceções em Java permite o gerenciamento de erros em tempo de execução. Uma exceção em Java é um objeto que descreve uma condição de
Leia maisEncapsulamento de Dados
Encapsulamento de Dados Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Modificadores de Visibilidade Especificam
Leia maisTratamento 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 maisinsfcanceof new public switch transient while byte continue extends for int null
Palavras -chave de JAV A abstract catch do final implements long private static throw void boolean char double finally import native protected super throws volatile break class float insfcanceof new public
Leia maisAtribuições: Valores, Ponteiros e Referências
Atribuições: Valores, Ponteiros e Referências Estruturas de Dados Prof. Vilson Heck Junior Sobre Variáveis Aprendemos, em introdução à programação, que possuem 3 partes mais importantes: Nome; Tipo de
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Implementação do analisador de logs do Servidor Web com base nos requisitos da unidade curricular de Estatística, de acordo com o roteiro abaixo: Recuperar o conteúdo do
Leia maisRESPOSTA: import java.util.arraylist; import java.util.list; class CarrinhoDeCompras2 { List<Produto> produtos;
Fundação CECIERJ - Vice Presidência de Educação Superior a Distância Curso de Tecnologia em Sistemas de Computação Disciplina: Programação Orientada a Objetos AP2 2 semestre de 2016. Nome Assinatura Observações:
Leia maisUNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS
Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra
Leia maisIntrodução. Universidade Federal de Uberlândia. Programação Orientada a Objetos. Prof. Fabiano Dorça
Introdução Universidade Federal de Uberlândia Programação Orientada a Objetos Prof. Fabiano Dorça Introdução Definições iniciais: classe, objeto, métodos, atributos. Introdução Ao escrever um programa
Leia maisHerança; Sobrescrita, Sobrecarga e Polimorfismo; Classes abstratas e concretas (finais).
Disciplina: Programação Orientada à Objetos AULA 08 Herança; Sobrescrita, Sobrecarga e Polimorfismo; Classes abstratas e concretas (finais). Corpo docente: MsC. Alexandro Vladno Edmilson Campos MsC. Fábio
Leia maisAula 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 maisnome = n; cargo = c; salario = s; public void print() { System.out.println(nome cargo salario); public void aumento( double fator){
UNIVERSIDADE FEDERAL DE SANTA CATARINA - Departamento de Automação e Sistemas PROGRAMAÇÃO DE SISTEMAS AUTOMATIZADOS - 2016/2 - P2 Nome: ------------------------------------------------------------------------------------------------------
Leia maisExceções. Profa. Patrícia A. Jaques Slides alterados por Leandro Tonietto Mar-12. quarta-feira, 21 de março de 12
Exceções Profa. Patrícia A. Jaques Slides alterados por Leandro Tonietto Mar-12 Tratamento de Exceções O tratamento de exceções em Java permite o gerenciamento de erros em tempo de execução. Uma exceção
Leia maisEspecificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos)
Mecanismos de controlo de acesso Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a cada classe e cada membro da classe (dados e métodos) Modificadores de acesso: public protected private
Leia maisPROGRAMAÇÃO JAVA. Parte 3
PROGRAMAÇÃO JAVA Parte 3 O PRIMEIRO PROGRAMA O Java executa uma instrução a seguir a outra, pela ordem em que estão escritas. Essa sequência poderá ser contrariada de forma especial: Alternativas: Ciclos
Leia maisTratamento 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 maisFundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus
Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis
Leia maisProgramação Orientada por Objectos 2007/2008
Programação Orientada por Objectos 2007/2008 Segundo Teste, 30/6/2008, Duração 1h30 (20 valores) 1 [2v] Considere que pretende desenvolver uma função num jogo que trata uma colisão entre dois objectos
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos luno: ata: Professor: Leonardo abral da Rocha Soares 1. Torna o atributo visível a todas as classes do pacote onde foi declarado: a) public b) private c) protected d) package
Leia maispackage especificadores1; public class Alpha { public static void alphapublic(){ System.out.println("Alpha public!"); }
package especificadores1; public class Alpha { public static void alphapublic(){ System.out.println("Alpha public!"); protected static void alphaprotected(){ System.out.println("Alpha protected!"); static
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos luno: ata: Professor: Leonardo abral da Rocha Soares 1.ado o seguinte código: class valiacao { Qual fragmento de código irá compilar? a) class Prova extends valiacao { b)
Leia maisProgramação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos
Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){
Leia maisAnálise de Programação
Análise de Programação Fundamentos da Linguagem de Programação Java Prof. Gilberto B. Oliveira Variáveis Atributos: Variáveis Declaradas fora de um método, sem o modificador static Variáveis membro ou
Leia maisArrays em Java. Introdução à Programação. Bruno Cartaxo
Arrays em Java Introdução à Programação Bruno Cartaxo http://sites.google.com/site/brunocartaxo bruno.cartaxo@olinda.ifpe.edu.br Tópicos a serem discutidos na disciplina Introdução a computadores e algoritmos
Leia maisClasses, Superclasses e Subclasses
Herança Herança A idéia é criar novas Classes construindo-as sobre outras existentes Ao herdar de uma classe, reusamos (herdamos) seus métodos E podemos adicionar novos métodos e campos para adaptar a
Leia maisPontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação
Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação LP: Laboratório de Programação Apontamento 14 Prof. ISVega Maio de 2004 Mecanismo de Exceções em Java CONTEÚDO 14.1Erros,
Leia mais9 Classes Abstractas e Interfaces
9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisProgramaçã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 maisProf. Rogério Rocha 1
Uma estrutura de dados é um modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados eficientemente. Diferentes tipos de estrutura de dados são adequados a
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Modificadores de Acesso: public e private Prof. Tulio Alberton Ribeiro Instituto Federal de Santa Catarina IFSC campus São José tulio.alberton@ifsc.edu.br 31 de julho de
Leia maisHerança. Fátima L. S. Nunes Luciano A. Digiampietri Norton T. Roman SISTEMAS DE INFORMAÇÃO 1
Herança Fátima L. S. Nunes Luciano A. Digiampietri Norton T. Roman 1 1 1 Motivação Você está desenvolvendo um sistema de gerenciamento de pessoal para a USP Precisa fazer: Cadastro de alunos e professores
Leia maisLinguagem de Programação Orientada a Objeto Construtores e Sobrecarga
Linguagem de Programação Orientada a Objeto Construtores e Sobrecarga Professora Sheila Cáceres Sobrecarga (overloading) Na mesma classe podemos definir vários métodos com o mesmo nome Sobrecarga O tipo
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 maisUNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS
Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 6 Filas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA 6 Filas Estrutura de Dados A Estrutura de Dados Fila Fila é uma estrutura de dados usada em programação, que tem regras para
Leia maisTratamento 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 maisInput / Output na linguagem java. Para isso usamos um dos construtores da classe java.io.file:
Input e Output 1 A classe File Input / Output na linguagem java Antes de podermos ler/escrever de/para um ficheiro temos que criar um objecto do tipo File e associar esse objecto ao ficheiro a que queremos
Leia mais1) Responda de acordo com os conceitos de orientação a objetos (0,5).
Avalição II (Teórica) 22/06/2017 Disciplina Linguagem de Programação II Prof. Wagner, dos Santos C. de Jesus Curso Engenharia da Computação Questões Solução da Avaliação 1) Responda de acordo com os conceitos
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisHerança. Prof. Fernando V. Paulovich 23 de agosto de 2010
Herança SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação(ICMC) Universidade
Leia maisCódigo-Fonte da Prática 02
Código-Fonte da Prática 02 Sumário Classe ConexaoDB... 2 Classe PropriedadesBD... 5 Arquivo conexao.properties... 6 Programação Comercial Walderson Shimokawa 1 Classe ConexaoDB package br.edu.univag.util.sql;
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 05 Padrões GoF (Singleton e Iterator) Edirlei Soares de Lima Padrões GoF Criação: Abstract Factory Builder Factory Method Prototype
Leia maisSistema Futebol - Java
Sistema Futebol - Java ARTEFATO 01 Indice 1. CLASSE PESSOA... 2 2. CLASSE JOGADOR... 3 3. CLASSE TECNICO... 5 4. CLASSE SISTEMAFUTEBOL... 6 5. CLASSE SISTEMAFUTEBOLMAIN... 10 6. EXERCÍCIOS... 10 AT01 Sistema
Leia maisMódulo 03. Identificadores, Palavras Reservadas, e Tipos
Módulo 03 Identificadores, Palavras Reservadas, e Tipos Objetivos Utilizar comentários em um programa. Distinguir entre identificadores válidos e não-válidos. Reconhecer palavras-reservadas da tecnologia
Leia maisPROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO
COLÉGIO ESTADUAL ULYSSES GUIMARÃES CURSO TÉCNICO PROFISSIONALIZANTE EM INFORMÁTICA ERINALDO SANCHES NASCIMENTO PROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO FOZ DO IGUAÇU 2013 LISTA
Leia maisLaboratório de Programação. Aula 12 Java 5COP088. Aula 12 Exceções Prof. Dr. Sylvio Barbon Junior. Sylvio Barbon Jr
5COP088 Laboratório de Programação Aula 12 Exceções Prof. Dr. Sylvio Barbon Junior 1 Sumário: 1) Manipulação de Exceções; 1) Try e Catch 2) Finally 3) Propagação (Throw e Throws) 2) Erros e Exceções Comuns;
Leia mais1. 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 maisLista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }
Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos
Leia maisLoad-Time Structural Reflection in Java
Load-Time Structural Reflection in Java Stefan Neusatz Guilhen Java provê uma API para reflexão, que é quase toda voltada para introspecção. As possibilidades para se alterar o comportamento de um programa
Leia maisAPIs Java: Tratamento de exceções e Coleções
APIs Java: Tratamento de exceções e Coleções POO29004 Engenharia de Telecomunicações Prof. Emerson Ribeiro de Mello http://docente.ifsc.edu.br/mello/poo 16 DE ABRIL DE 2019 Tratamento de Exceções Um simples
Leia maisVector Java. Empregado.java
Vector Java Empregado.java /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools Templates * and open the template in the editor.
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação
4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança
Leia maisEx: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel)
Herança capacidade de uma classe (subclasse) herdar, adquirir atributos e funcionalidades de outra classe (superclasse), podendo juntar algumas especificidades e/ou alterar outras. Existe uma relação tipo
Leia maisA Relação de Subtipo e Tipos Genéricos
O tipo List representa as listas que declaram ter elementos do tipo Object O tipo que representa as listas que declaram ter elementos de um tipo qualquer é List Este tipo é definido à custa
Leia maisLinguagem de programação Java
Instituto Federal de Minas Gerais Campus Ponte Nova Linguagem de programação Java Professor: Saulo Henrique Cabral Silva ENTENDENDO O JAVA 2 Entendendo o Java executando... A instância da JVM irá iniciar
Leia maisLuz, C Âmera, Ação! Introdução ao Java Cont.
Luz, C Âmera, Ação! Introdução ao Java Cont. CamelCase É a denominação em inglês para a prática de escrever palavras compostas ou frases, onde cada palavra é iniciada com Maiúsculas e unidas sem espaços.
Leia maisObjetivo do programa: Implementação de um analisador de Logs do Servidor Web com base nos requisitos da unidade curricular de Estatística.
Objetivo do programa: Implementação de um analisador de Logs do Servidor Web com base nos requisitos da unidade curricular de Estatística. package ProjetoIntegrador; import java.io.bufferedreader; import
Leia maisNotas de Aula 01: Introdução à linguagem de programação Java e ao ambiente de desenvolvimento NetBeans
Notas de Aula 01: Introdução à linguagem de programação Java e ao ambiente de desenvolvimento NetBeans Objetivos da aula: Introduzir conceitos da linguagem Java Apresentar um histórico da linguagem Apresentar
Leia maisProgramação Orientada a Objetos. Polimorfismo
Programação Orientada a Objetos Polimorfismo Cristiano Lehrer, M.Sc. Introdução (1/3) Polimorfismo significa ter muitas formas. Em termos de programação, muitas formas significa que um único nome pode
Leia maisTabelas de Dispersão. Estrutura de Dados e Algoritmos
Tabelas de Dispersão Tabelas de Dispersão Sumário Definição. Características. Resolução de colisões: dispersão com listas e dispersão aberta. Teste quadrático. Desempenho de tabelas de dispersão. Interface
Leia maisEspecialização em Engenharia de Software
Especialização em Engenharia de Software Programação Orientada a Objetos Conceitos gerais e array Sérgio Soares scbs@cin.ufpe.br Programação Orientada a Objetos Foco nos dados (objetos) do sistema, não
Leia maisVetores Unimensionais
Vetores Unimensionais Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Imprimir elementos de um
Leia maisTratamento de Exceções em Java
Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Tratamento de Exceções em Java Professor: César Melo Slides baseados em materiais preparados pela Profa.
Leia maisOrientação a Objetos e Java
Orientação a Objetos e Java Daves Martins davesmartins@yahoo.com.br Mestre em Computação de Alto Desempenho pela UFRJ Especialista em Banco de Dados Analista Web Orientação a Objetos e Java Características
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Programação com Tipos Genéricos www.comp.ita.br/~pauloac/ces22/ Tipos Genéricos Sumário A necessidade dos Genéricos Métodos Genéricos Classes Genéricas Utilização de wildcards
Leia maisProgramação Orientada a Objetos. Métodos e Atributos. Métodos. Métodos. Alexandre César Muniz de Oliveira. Parte III
Programação Orientada a Objetos Alexandre César Muniz de Oliveira Métodos e Atributos Parte III Métodos [mod] tipo nome ([tipo arg]) [throws exc]{ [mod]: zero ou mais modificadores separados por espaços
Leia maisDesign Patterns (Factory Method, Prototype, Singleton)
DesignPatterns (FactoryMethod,Prototype,Singleton) JoãoAntónioPaz LuísMiguelClaro AlbertoManuelGomes N.º12812 N.º12817 N.º12818 FACTORYMETHOD Padrãoquedefineumainterfaceparacriaçãodeobjectos,masdeixaassubclassesdecidirque
Leia maisTrabalhadorEstudante te(123, Ana, Faro, feminino, 100.0, 22); Estudante e=te; //ok Estudante *pe = &te; //ok Estudante &se = te; //ok
$ % & ' ( ) * * * +, -. / 0 1 2 / 1 34 5 637 38 9 1 / 4 : 3/ 0 9 0 ; < 39 1 = / 7 69 1 1 / 1 >?@ A?@ B o / 4 + C C D E < - F 2 / 1. 30 8 < 9 3 1 G = / 18< 3 =, 0 / 1. 30 8 < 9 3 1 G H = / - 8 3 I 37 9
Leia maisTipos de dados e comandos POO
Tipos de dados e comandos POO Prof. Marcio Delamaro 1/46 Objetivo Vamos ver quais são os tipo de dados primitivos da linguagem Vamos ver quais são os principais comandos 2/46 Tipos Tipo Tamanho int 4 bytes
Leia maisSystem.out.print("e"); O programa acima irá imprimir: "b". O programa acima irá imprimir: "bd". O programa acima irá imprimir: "e".
Pergunta 1 Considere o programa a seguir. class SeQuestao1 { int num = 567; if(num % 2 == 0) { System.out.print("a"); else if(num % 3 == 0) { System.out.print("b"); else if(num % 5 == 0) { System.out.print("c");
Leia maisClasses e objectos em Java (introdução) PCO / PPO Departamento de Informática Faculdade de Ciências da Universidade de Lisboa
Classes e objectos em Java (introdução) PCO / PPO Departamento de Informática Faculdade de Ciências da Universidade de Lisboa Resumo Uso de classes e objectos em Java classes e objectos código cliente
Leia mais