Generics. Byron Leite e Bruno Fernandes. Orientação a objetos com Java. 1 Generics
|
|
- Vergílio Aquino Vilalobos
- 6 Há anos
- Visualizações:
Transcrição
1 Orientação a objetos com Java Generics Byron Leite e Bruno Fernandes {byronleite,bjtf@ecomp.poli.br 1 Generics
2 Agenda Geral Parte 07 Exceções Parte 08 Exceções Parte 09 Classes úteis Generics Arquitetura em camadas Parte 10 Implementação de um UC na arquitetura em camadas 2 Generics
3 Coleções em Java Motivação Coleções tratam SEMPRE tipos genéricos (Object) É impossível, nas versões anteriores ao Java 1.5, garantir que objetos de tipos diferentes não serão inseridos em uma coleção Quando se lê objetos de uma coleção, o uso do cast é obrigatório, e sob risco de não se estar convertendo o objeto para o tipo certo 3 Generics
4 Problema Analisando o código abaixo... List lista = new ArrayList(); lista.add("eduardo"); // OK em compilacao lista.add(new Integer(2)); // OK em compilacao lista.add(new Double(2.2)); // OK em compilacao // Agora... // Se, mais na frente, alguem faz isso... String elemento = (String)lista.get(1); // Erro de execucao Se houvesse uma maneira de garantir em tempo de compilação que, na dada lista, só fosse possível se adicionar elementos de um mesmo tipo (suponha String)?? 4 Generics
5 Problema Ainda analisando o código abaixo... List lista = new ArrayList(); lista.add("eduardo"); // OK em compilacao lista.add(new Integer(2)); // OK em compilacao lista.add(new Double(2.2)); // OK em compilacao // Agora... // Se, mais na frente, alguem faz isso... String elemento = (String)lista.get(1); // Erro de execucao E, se houvesse uma maneira de evitar o cast?? Se o Java soubesse que a dada lista é uma lista de Strings, não haveria alternativa...o tipo da variável que receberia o retorno do método get TERIA que ser String 5 Generics
6 Solução No Java 5, é possível SUB-TIPAR alguns elementos que trabalham com tipos abstratos List<String> lista = new ArrayList<String>(); lista.add("eduardo"); // OK em compilacao lista.add(new Integer(2)); // Erro de compilacao 1 lista.add(new Double(2.2)); // Erro de compilacao 2 // Agora... // Se, mais na frente, alguem quiser acessar um elemento... String elem0 = lista.get(0); // Sem cast Integer elem1 = lista.get(1); // Erro de compilacao 3 Double elem2 = (Double)lista.get(1); // Erro de compilacao 4 O argumento entre <> é o tipo associado aos elementos que serão manipulados através dos métodos da interface List e que serão armazenados no objeto ArrayList 6 Generics
7 Solução É como se, colocando o tipo entre <>, o programador dissesse: Java, para esta lista que eu estou instanciando e representando por esta variável, onde antes se trabalhava com Object, passe a trabalhar APENAS com o tipo que eu especificar entre <> Este mecanismo é chamado de Generics Aumenta a garantia de código robusto e sujeito a erros de execução Diminui o uso de casts 7 Generics
8 Solução Nos erros de compilação 1 e 2 O método add(string s) espera uma String Está se tentando passar um Integer e um Double para uma String É o mesmo que: String s = new Integer(2); Integer não é sub-tipo de String É o mesmo que: String s = new Double(2.2); Double não é sub-tipo de String 8 Generics
9 Solução Nos erros de compilação 3 e 4... O tipo de retorno do método get é String Regra de compilação do cast: Tipo do cast igual ou sub-tipo do tipo da variável de destino - OK Tipo do cast e tipo da variável ou do retorno de origem na mesma hierarquia Tipo do cast: Integer Tipo do retorno de origem: String, pois o get volta uma String Integer e String não estão na mesma hierarquia 9 Generics
10 Percorrendo Coleções Analise o seguinte programa escrito da forma tradicional... List listaprod = new ArrayList(); long codigo = 0; do { codigo = KeyboardReader.readLong(); if (codigo > 0) { String nome = KeyboardReader.readString(); double preco = KeyboardReader.readDouble(); Produto p = new Produto(codigo,nome,preco); listaprod.add(p); while (codigo > 0); // Mostra os produtos incluidos na lista for (int i=0;i<listaprod.size();i++) { Produto p = (Produto)listaProd.get(i); System.out.println("Codigo: "+p.getcodigo()); System.out.println("Nome : "+p.getnome()); System.out.println("Preco : "+p.getpreco()); 10 Generics
11 Percorrendo Coleções Agora, analise o programa escrito com Generics... List<Produto> listaprod = new ArrayList<Produto>(); long codigo = 0; do { codigo = KeyboardReader.readLong(); if (codigo > 0) { String nome = KeyboardReader.readString(); double preco = KeyboardReader.readDouble(); Produto p = new Produto(codigo,nome,preco); listaprod.add(p); while (codigo > 0); // Mostra os produtos incluidos na lista //for (Produto p : listaprod) { for (int i=0;i<listaprod.size();i++) { Produto p = listaprod.get(i); System.out.println("Codigo: "+p.getcodigo()); System.out.println("Nome : "+p.getnome()); System.out.println("Preco : "+p.getpreco()); 11 Generics
12 Outras Aplicações Generics pode ser usado em outros contextos Garantia de compatibilidade de tipos em métodos que recebem parâmetros correlatos Rotinas genéricas podem indicar que SÓ recebem coleções de uma SUB- HIERARQUIA bounded wild-cards 12 Generics
13 Generics em Classes e Intefaces Parametrizam a classe ou interface public interface List<T> extends Collection<T> {... T get(int index);... Método genérico: public static <T> T getfirst(list<t> list) { return list.get(0); 13 Generics
14 Wildcards Permite um tratamento mais genérico dos tipos passados a uma função public void processelements(list<?> elements) { for(object o : elements) { System.out.println(o); /* Podemos atribuir um list de qualquer tipo a nosso método, pois ele tem um tipo desconhecido/genérico */ List<A> lista = new ArrayList<A>(); processelements(lista); 14 Generics
15 Extends Wildcards public void processelements(list<? extends Fruit> elements) { for(fruit a : elements) { System.out.println(a.getValue()); /* Podemos agorar passar nossas frutas diversas ao método processelements */ List<Apple> listapple = new ArrayList<Apple>(); processelements(listapple); List<Orange> listorange = new ArrayList<Orange>(); processelements(listorange); List<Strawberry> liststrawberry = new ArrayList<Strawberry>(); processelements(liststrawberry); 15 Generics
Coleções. Page 1. Coleções. Prof. Anderson Augustinho Uniandrade
Page 1 podem ser comparadas com arrays, visto que também apresentam a capacidade de armazenar referências para vários objetos. Entretanto, as coleções apresentam uma gama de funcionalidades bem maior do
Leia maisJava RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação
Java Remote Method Invocation Java Remote Method Invocation () é um protocolo Java para comunicação entre processos Permite objetos Java invocar transparentemente métodos de outros objetos (que podem estar
Leia maisJava na Prática. Célio Silva Aula 3
Java na Prática Célio Silva Aula 3 Java na Prática Collections List List são listas de coisa ordenadas/não ordenadas, com duplicações permitidas e com um índice Servem para encapsular código de tratamento
Leia maisIntrodução à Programação de Computadores Parte I
Introdução à Programação de Computadores Parte I Prof. Dr. Edson Pimentel Centro de Matemática, Computação e Cognição Objetivos Compreender os componentes básicos de um programa... Objetivos Bacharelado
Leia maisUnidade IV: Ponteiros, Referências e Arrays
Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática
Leia maisPara entender o conceito de objetos em programação devemos fazer uma analogia com o mundo real:
Introdução a Orientação a Objetos com Java Autor: Professor Victor Augusto Zago Menegusso. Orientação a Objetos É um paradigma de programação que define a estrutura de um programa baseado nos conceitos
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 3 Prof. ISVega Fevereiro de 2004 Estilo de Codificação CONTEÚDO 3.1 Regras
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 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 maisProjeto de sistemas em Java. Algoritmos e Programação I. Classe SimulacaoFuncionario. Classe SimulacaoFuncionario. Classe SimulacaoFuncionario
Projeto de sistemas em Java Algoritmos e Programação I Aula 25 Profa. Márcia Cristina Moraes mmoraes@inf.pucrs.br Profa. Sílvia M. W. Moraes silvia@inf.pucrs.br Agora que já estamos manipulando com mais
Leia maisIntrodução à orientação a objetos
Universidade Federal de Juiz de Fora PET Elétrica Introdução à orientação a objetos Tutor: Francisco José Gomes Aluno: João Tito Almeida Vianna 18/05/2013 1 Programação Estruturada x Orientação a objetos
Leia mais7 RTTI e Interfaces. Desenvolvimento OO com Java. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.
Desenvolvimento OO com Java 7 RTTI e Interfaces Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do
Leia maisColeções. Conceitos e Utilização Básica. c Professores de ALPRO I 05/2012. Faculdade de Informática PUCRS
Coleções Conceitos e Utilização Básica c Professores de ALPRO I Faculdade de Informática PUCRS 05/2012 ALPRO I (FACIN) Coleções: Básico 05/2012 1 / 41 Nota Este material não pode ser reproduzido ou utilizado
Leia maisCurso C: Ponteiros e Arrays
Universidade de Brasília Departamento de Ciência da Computação Curso C: Ponteiros e Arrays Prof. Ricardo Pezzuol Jacobi rjacobi@cic.unb.br Ponteiros um ponteiro Ž uma vari vel que contžm o endere o um
Leia maisParadigmas da Programação PPROG. Linguagem JAVA. Interfaces. (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33
PPROG Paradigmas da Programação Linguagem JAVA Interfaces (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33 PPROG Motivação para usar Interfaces Definição de Interface
Leia maisProgramação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM
Programação OO em Java Profa Andréa Schwertner Charão DELC/CT/UFSM Sumário Classes abstratas Interfaces Tipos genéricos Coleções Classes abstratas São classes que não podem ser instanciadas, porque representam
Leia maisJava Coleções. Rodrigo C. de Azevedo
Java Coleções Rodrigo C. de Azevedo OMG Certified UML Professional Fundamental OMG Certified UML Professional Intermediate CompTIA Project+ Sun Certified Associate for Java Platform Sun Certified Programmer
Leia maisUNIVERSIDADE DO VALE DO RIO DOS SINOS - UNISINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS - CENTRO 06. Funções, variáveis, parâmetros formais
UNIVERSIDADE DO VALE DO RIO DOS SINOS - UNISINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS - CENTRO 06 Disciplina: Linguagem de Programação C Profª Viviane Todt Diverio Funções, variáveis, parâmetros formais
Leia maisAula 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 maisProgramação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP
Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente
Leia maisMódulo 06 Desenho de Classes
Módulo 06 Desenho de Classes Última Atualização: 13/06/2010 1 Objetivos Definir os conceitos de herança, polimorfismo, sobrecarga (overloading), sobreescrita(overriding) e invocação virtual de métodos.
Leia maisAula 04 Operadores e Entrada de Dados. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.
Aula 04 Operadores e Entrada de Dados Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Operadores: Aritméticos; Atribuição; Concatenação;
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro. Cartão de fidelização de clientes das distribuidoras de combustível.
Caso de estudo O cartão fidelidade Cartão de fidelização de clientes das distribuidoras de combustível. Definição em JAVA da classe CartaoFidelidade, que deverá apresentar uma funcionalidade semelhante
Leia maisProgramação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM
Programação OO em Java Profa Andréa Schwertner Charão DELC/CT/UFSM Sumário Classes abstratas Interfaces Tipos genéricos Coleções Introdução GUI Classes abstratas São classes que não podem ser instanciadas,
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 maisdouble [] precoa = new double [1000]; // Preço com desconto para compras Avista
import java.util.scanner; import javax.swing.joptionpane; import java.text.decimalformat; public class ControleVendas{ public static String arraytostring(string[] array, String delimiter) { StringBuilder
Leia maisVetores Unimensionais
Unimensionais Obje%vos Conceituação de Manipulação de Inserir elementos em um vetor (usando laços ou não) Imprimir elementos de um vetor (usando laços ou não) Exemplos Conceituando Definição de vetores:
Leia maisRafael Santos. Instituto Nacional de Pesquisas Espaciais www.lac.inpe.br/ rafael.santos. Rafael Santos - www.lac.inpe.br/ rafael.
Coleções e Aplicações Rafael Santos Instituto Nacional de Pesquisas Espaciais www.lac.inpe.br/ rafael.santos Rafael Santos - www.lac.inpe.br/ rafael.santos 1 / 54 Tópicos 1 Sobre... 2 Revisão de Java 3
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 maisSimulado de Linguagem de Programação Java
Simulado de Linguagem de Programação Java 1. Descreva o processo de criação de programas em Java, desde a criação do código-fonte até a obtenção do resultado esperado, por meio de sua execução. Cite as
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 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 maisSeminário - C# DSO II. Desenvolvimento de Sistemas Orientados a Objetos 2. Equipe: Diorges, Leonardo, Luís Fernando, Ronaldo
Seminário - C# DSO II Desenvolvimento de Sistemas Orientados a Objetos 2 Equipe: Diorges, Leonardo, Luís Fernando, Ronaldo Roteiro Breve Histórico Plataforma.NET Características da Linguagem Sintaxe Versões
Leia maisDesenvolvimento Web TCC-00.226 Turma A-1
Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Orientação a Objetos Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226
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 maisProgramação Orientada a Objetos em
Programação Orientada a Objetos em Flávio Miguel Varejão UFES Utilidades Pacotes com várias classes amplamente utilizadas Exemplos Vector, ArrayList, Calendar, Currency, Random, Formatter, Scanner, Comparator,
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 maisDEFINIÇÃO DE MÉTODOS
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 2 DEFINIÇÃO DE MÉTODOS Todo o processamento que um programa Java faz está definido dentro dos
Leia maisINF1007: Programação 2 9 Tipos Abstratos de Dados. (c) Dept. Informática - PUC-Rio 1
INF1007: Programação 2 9 Tipos Abstratos de Dados (c) Dept. Informática - PUC-Rio 1 Tópicos Módulos e compilação em separado Tipo abstrato de dados Exemplo 1: TAD Ponto Exemplo 2: TAD Círculo Exemplo 3:
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 maisUm Exemplo de Refatoração. Prof. Alberto Costa Neto DComp/UFS alberto@ufs.br
Um Exemplo de Refatoração Prof. Alberto Costa Neto DComp/UFS alberto@ufs.br Exemplo Programa para calcular e imprimir o valor devido por um cliente de uma vídeo locadora Filme códigopreço:int 1 * * 1 Locação
Leia maisConversão de Tipos e Arrays
Conversão de Tipos e Arrays Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Conversão de Tipos Permite converter
Leia maispublic Agenda() { compromissos = null; } public int getnumerodecompromissos() { if (compromissos==null) return 0; else return compromissos.
import java.util.scanner; class Data... class Compromisso... public class Agenda private Compromisso[] compromissos; private Compromisso[] realoquecompromissos (Compromisso[] vetor, int tamanhodesejado)
Leia maisExercício de Estrutura de dados. Java Fila
Exercício de Estrutura de dados Java Fila Obs.: Esse projeto foi um exercício realizado em sala de aula da matéria de Estrutura de dados com o Profº Frederico Augusto Siqueira Gentil Aqui está sendo relatado
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 maisIntrodução ao. Script. Baltazar Tavares (Psycho Mantys) https://psychomantys.wordpress.com https://about.me/psycho_mantys
Introdução ao Script Baltazar Tavares (Psycho Mantys) https://psychomantys.wordpress.com https://about.me/psycho_mantys O que é Bash Script? O que é Bash + Script? O que é Bash? O que é Bash? Ele é um
Leia maisJAVA 1.5 na plataforma J2SE 5.0 Tiger Novas Construções, Sintaxe, Tipos e Polimorfismo
JAVA 1.5 na plataforma J2SE 5.0 Tiger Novas Construções, Sintaxe, Tipos e Polimorfismo GENERICS (Tipos Parametrizados, Classes Parametrizadas) : têm o objectivo de tornar as Colecções seguras em termos
Leia maisCapítulo 5 Reuso de Classes
Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. Desenvolvimento Orientado a Objetos com Java Capítulo 5 Reuso de Classes
Leia maisConstrução de novas Classes em Java. Classes Atributos Métodos Herança...
Construção de novas Classes em Java Classes Atributos Métodos Herança... 1 Exemplo Representação em UML Java (Unified Modeling Language) Stack items : Vector Stack( ) push( ) pop( ) isempty( ) finalize(
Leia maisAnálise de Programação
Análise de Programação Conceitos Avançados da Linguagem de Programação Java Prof Gilberto B Oliveira Encapsulamento Proteger o dado dentro de uma classe (capsula segura) Facilita o uso da classe por outros
Leia maisProgramação Orientada a Objetos. Encapsulamento
Programação Orientada a Objetos Encapsulamento de Dados Ocultação de dados Garante a transparência de utilização dos componentes do software, facilitando: Entendimento Reuso Manutenção Minimiza as interdependências
Leia maisNum programa em JAVA é possível definir diferentes sequências de execução independente: Threads.
Threads Folha 5-1 Num programa em JAVA é possível definir diferentes sequências de execução independente: Threads. Uma Thread é similar a um processo no sentido em que corresponde a um conjunto de instruções
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 maisIntroduçã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 maisOrientação a Objetos
Orientação a Objetos 1. Manipulando Atributos Podemos alterar ou acessar os valores guardados nos atributos de um objeto se tivermos a referência a esse objeto. Os atributos são acessados pelo nome. No
Leia maisAula 10 Polimorfismo. Prof. Jefersson Alex dos Santos. Baseado em: http://homepages.dcc.ufmg.br/~fernando/classes/dcc052/ementa/lesson8/
Aula 10 Polimorfismo Prof. Jefersson Alex dos Santos Baseado em: http://homepages.dcc.ufmg.br/~fernando/classes/dcc052/ementa/lesson8/ Polimorfismo Definição: É a capacidade de um objeto em decidir que
Leia mais5 Caso de estudo O cartão fidelidade
5 Caso de estudo O cartão fidelidade Cartão de fidelização de clientes das distribuidoras de combustível. Definição em JAVA da classe CartaoFidelidade, que deverá apresentar uma funcionalidade semelhante
Leia maisKeeper of Knowledge. Capítulo 2 Classes em Java
Capítulo 2 Classes em Java INTRODUÇÃO Uma classe é um conjunto de software que representa uma realidade qualquer, que pode ser representada por números e símbolos. Uma classe possui dados de um ou mais
Leia maisIntrodução à orientação a objetos. João Tito Almeida Vianna 25/05/2013
Introdução à orientação a objetos João Tito Almeida Vianna 25/05/2013 Roteiro Aula 2 Motivação Revisão dos conceitos da aula 1 Preparação para os exercícios Exercícios propostos 2 Motivação A orientação
Leia maisParadigmas de Programação. Genéricos
Genéricos Extensão à linguagem Java apresentada pelo JDK1.5 Permite reutilização de software com tipo seguro Permite abstrair do tipo de dados Exemplo: Desenvolver código para uma classe (por ex, uma pilha)
Leia maisLISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS. Estrutura de Dados
LISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS Listas Lineares Como visto anteriormente, as operações básicas para o nosso TAD Lista Linear são: FLVazia Vazia Retira Insere Imprime A implementação através de arrays
Leia maisProgramação Orientada a Objetos (DPADF 0063)
Programação Orientada a Objetos (DPADF 0063) Aula 5 Herança Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof. Bruno
Leia maisUtilizem a classe Aula.java da aula passada:
Introdução à Java Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Código Exemplo da Aula Utilizem a classe Aula.java da aula passada: public class Aula { public static void main(string[]
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 maisTCC 00.174 Prof.: Leandro A. F. Fernandes www.ic.uff.br/~laffernandes. Conteúdo: Tipos Genéricos
Programação de Computadores II TCC 00.174 Prof.: Leandro A. F. Fernandes www.ic.uff.br/~laffernandes Conteúdo: Material elaborado pelos profs. Anselmo Montenegro e Marcos Lage com contribuições do prof.
Leia maisTécnicas de Programação Avançada TCC- 00.174 Prof.: Anselmo Montenegro www.ic.uff.br/~anselmo anselmo@ic.uff.br
Técnicas de Programação Avançada TCC- 00.174 Prof.: Anselmo Montenegro www.ic.uff.br/~anselmo anselmo@ic.uff.br Conteúdo: Coleções Material elaborado com contribuição do Professor Luiz André Coleções Uma
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 maisReader e Writer para streams de caracteres (texto).
Folha 1-1 Recordando POO: Streams Uma stream é uma abstracção que representa uma fonte genérica de entrada de dados ou um destino genérico para escrita de dados que é definida independentemente do dispositivo
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 maisBacharelado 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 maisEstrutura em Camadas. Estrutura em Camadas. Alcides Pamplona alcides.pamplona@gmail.com. Alcides Pamplona Linguagem de Programação CESBD 2010
Alcides Pamplona Linguagem de Programação CESBD 2010 Alcides Pamplona alcides.pamplona@gmail.com Tópicos Componentes da Estrutura Estruturando Aplicações OO em Camadas 2 Arquitetura em 1 camada Todas as
Leia maisAtividade JSP com Banco de Dados
Instituto Federal de Santa Catarina - Campus Chapecó Engenharia de Controle e Automação Programação II Professor: Bruno Crestani Calegaro Atividade JSP com Banco de Dados Objetivos Elaborar um projeto
Leia maisProgramação com Acesso a BD. Programação com OO Acesso em Java
Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática
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 mais2ª LISTA DE EXERCÍCIOS CLASSES E JAVA Disciplina: PC-II. public double getgeracaoatual() {return geracaoatual;}
2ª LISTA DE EXERCÍCIOS CLASSES E JAVA Disciplina: PC-II Exercício : Construtores são métodos especiais sem tipo de retorno (nem mesmo void) e de mesmo nome que a classe que são invocados quando da criação
Leia maisCriar a classe Aula.java com o seguinte código: Compilar e Executar
Introdução à Java Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Código Exemplo da Aula Criar a classe Aula.java com o seguinte código: public class Aula { public static void
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: 02 APRESENTAÇÃO: Apresentação; conceitos básicos da linguagem java; estrutura
Leia maisMétodos de Pesquisa em Memória Primária
Algoritmos e Estrutura de Dados II Métodos de Pesquisa em Memória Primária Prof Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Pesquisa Por pesquisa (procura ou busca) entende-se o ato
Leia maisProfa. Thienne Johnson
Profa. Thienne Johnson E. Gamma and R. Helm and R. Johnson and J. Vlissides. Design Patterns - Elements of Reusable Object-Oriented Software. Addison- Wesley, 1995. Conhecido como GoF (Gang of Four) Versão
Leia maisModelagem e Implementação (Incremental de um Software para Controle) de Aquário de Peixes
Modelagem e Implementação de Aquário de Peixes- por Jorge Fernandes - Página 1 Modelagem e Implementação (Incremental de um Software para Controle) de Aquário de Peixes Jorge Fernandes Natal, Agosto de
Leia maisProgramação por Objectos. Java
Programação por Objectos Java Parte 3: Métodos LEEC@IST Java 1/45 Métodos (1) Sintaxe Qualif Tipo Ident ( [ TipoP IdentP [, TipoP IdentP]* ] ) { [ Variável_local Instrução ]* Qualif: qualificador (visibilidade,
Leia maisAlgoritmos e Programação II. Sobrecarga
Algoritmos e Programação II Baseado no Material do Prof. Júlio Machado Sobrecarga Em várias linguagens é comum encontrarmos rotinas que fazem basicamente a mesma coisa, porém, têm nomes distintos porque
Leia maisOrientação a Objetos com Java
Orientação a Objetos com Java Julio Cesar Nardi julionardi@yahoo.com.br 2011/2 Apresentação 3: Orientação Objetos: Conceitos Básicos Objetivos: Compreender os Conceitos Básicos da Orientação a Objetos;
Leia maisCapítulo 4. Packages e interfaces
Capítulo 4. Packages e interfaces 1/17 Índice Indice 4.1 - Package 4.2 - Interface 2/17 Índice 4.1 Package 4.1 - Package 4.2 -- Interface 3/17 4.1 Package Package ou pacote está para o Java como as directorias
Leia maisUniversidade Federal de Uberlândia
Universidade Federal de Uberlândia Programação Orientada a Objetos I Introdução a Java Sintaxe básica OO Prof. Fabiano Azevedo Dorça Em Java, cada classe dá origem a um arquivo.java contendo o código fonte.
Leia maisRevisão OO Básico. Orientação a Objetos em Java
Revisão OO Básico Orientação a Objetos em Java Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Nomenclatura A unidade básica de programação em linguagens orientadas a objetos é a
Leia mais8 Classes Internas. Desenvolvimento OO com Java. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.
Desenvolvimento OO com Java 8 Classes Internas Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do
Leia maisManipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015
Manipulação de Banco de Dados com Java Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Acesso a um SGBD Em sistemas mais simples o uso de arquivos pode ser usado mas para aplicações
Leia maisProgramação Orientada a Objetos em java. Polimorfismo
Programação Orientada a Objetos em java Polimorfismo Polimorfismo Uma característica muito importante em sistemas orientados a objetos Termo proveniente do grego, e significa muitas formas Em POO, significa
Leia maisMacros e Programação VBA
SI Macros e Programação VBA 1/ 15 Macros e Programação VBA Sistemas de Informação MIEM / MIEIG SI Macros e Programação VBA 2/ 15 O que são macros? São sequências de instruções simples cujo objectivo é
Leia maisTabelas (arrays) (vetores, matrizes, etc) Algoritmos de pesquisa Algoritmos de ordenação
Java Tabelas (arrays) (vetores, matrizes, etc) Algoritmos de pesquisa Algoritmos de ordenação 1 Tabelas para quê? As tabelas são utilizadas quando se pretende armazenar e manipular um grande número de
Leia maisProf. Jhonatan Fernando
Prof. Jhonatan Fernando Métodos Programação OO Instâncias de variáveis (objetos) Mensagens Classes Herança Polimorfismo Encapsulamento Abstração Programação Estruturada Procedimentos e funções Variáveis
Leia maisProjeto de Software Orientado a Objeto
Projeto de Software Orientado a Objeto Ciclo de Vida de Produto de Software (PLC) Analisando um problema e modelando uma solução Prof. Gilberto B. Oliveira Estágios do Ciclo de Vida de Produto de Software
Leia maisRelacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos
Programação Orientada a Objetos Relacionamentos entre objetos Associação, composição e agregação Construtores e sobrecarga Variáveis de classe e de instância Reinaldo Gomes reinaldo@cefet-al.br Objetos
Leia maisProgramas eram lineares e com poucos módulos (Programação estruturada) Aumento da complexidade dos sistemas e difícil reusabilidade dos mesmos
OO -Objetos, classes, atributos, métodos, estado, comportamento e identidade (Slide) Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Introdução Programas eram lineares e com poucos
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 mais3 Classes e instanciação de objectos (em Java)
3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem
Leia maisJava Persistence Query Language JPQL
Introdução SELECT FROM WHERE GROUP BY HAVING ORDER BY Java Persistence Query Language JPQL Prof. Enzo Seraphim Definições Tornar SQL orientado a objetos Classes e propriedades ao invés de Tabelas e colunas
Leia mais