Sistemas de Informação: XML- Java

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

Download "Sistemas de Informação: XML- Java"

Transcrição

1 XL 1 : XL- Java Todos os exemplos bem como o conteúdo teórico tem por base o livro: Steven Holzner, SAS Teach Yourself XL, SAS Publishing, 2004 XL Java e XL 2 Documentos XL podem ser abordados de dois modos W3C DO (Document Object odel): documento tratado como uma árvore de nós SAX (Simple API for XL): documento tratado como um arquivo texto Com DO é necessário construir na memória a árvore completa que representa o documento XL para depois se poder manipulá-lo Com SAX os elementos são recuperados a medida que o documento XL é lido Os elementos não são automaticamente mantidos na memória

2 XL XL, Java e DO 3 Ler um Documento XL com Java (DO) ch16_01.xml <?xml version="1.0" encoding="utf-8"?> <session> <committee type="monetary"> <title>finance</title> <number>17</number> <subject>donut Costs</subject> <date>7/15/2005</date> <attendees> <senator status="present"> <firstname>thomas</firstname> <lastname>smith</lastname> </senator> <senator status="absent"> <firstname>frank</firstname> <lastname>ccoy</lastname> </senator> <senator status="present"> <firstname>jay</firstname> <lastname>jones</lastname> </senator> </attendees> </committee> </session> XL XL, Java e DO Ler um Documento XL com Java (DO) package ismt; import javax.xml.parsers.*; import org.w3c.dom.*; 4 Ch16_02.java public class Ch16_02 static String displaytext[] = new String[1000]; static int numberlines = 0; public static void main(string args[]) try DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = null; try builder = factory.newdocumentbuilder(); catch (ParserConfigurationException e) Objeto que é criado para fazer a leitura do documento XL. Objeto que é criado para realizar o parsing do documento XL. Document document = null; document = builder.parse(args[0]); childloop(document, ""); catch (Exception e) e.printstacktrace(system.err); Lê o nome documento XL que será analisado e cria o DO. étodo que irá manipular o DO.

3 Ch16_02.java continuação... XL XL, Java e DO Ler um Documento XL com Java (DO) for(int loopindex = 0; loopindex < numberlines; loopindex++) System.out.println(displayText[loopIndex]); Apresenta o documento após ele ter sido criado public static void childloop(node node, String indentation) A partir do tipo do nó (tabela transp. 10) executa tarefas específicas if (node == null) return; int type = node.getnodetype(); switch (type) case Node.DOCUENT_NODE: Se o documento estiver vazio retorna Recupera o tipo do nó Se o nó for o indicativo de documento adiciona o prólogo a displaytext displaytext[numberlines] += "<?xml version=\"1.0\" encoding=\""+ "UTF-8" + "\"?>"; childloop(((document)node).getdocumentelement(), ""); break; Chama childloop com o nó filho do nó tratado 5 XL XL, Java e DO Ler um Documento XL com Java (DO) Verifica o número de atributos do nó, cria um vetor de atributos e itera sobre ele Ch16_02.java continuação... case Node.ELEENT_NODE: displaytext[numberlines] += "<"; displaytext[numberlines] += node.getnodename(); Armazena os atributos no vetor Elemento é do tipo nó int length = (node.getattributes()!= null)? node.getattributes().getlength() : 0; Attr attributes[] = new Attr[length]; for (int loopindex = 0; loopindex < length; loopindex++) attributes[loopindex] = (Attr)node.getAttributes().item(loopIndex); for (int loopindex = 0; loopindex < attributes.length; loopindex++) Attr attribute = attributes[loopindex]; displaytext[numberlines] += " "; displaytext[numberlines] += attribute.getnodename(); displaytext[numberlines] += "=\""; displaytext[numberlines] += attribute.getnodevalue(); displaytext[numberlines] += "\""; displaytext[numberlines] += ">"; 6 Cria cada um dos nós recuperando seu nome Cria a saída para representar o atributo.

4 Ch16_02.java continuação... XL XL, Java e DO Ler um Documento XL com Java (DO) Verifica o número de filhos do nó NodeList childnodes = node.getchildnodes(); if (childnodes!= null) length = childnodes.getlength(); indentation += " "; for (int loopindex = 0; loopindex < length; loopindex++ ) childloop(childnodes.item(loopindex), indentation); break; Verifica se o nó tem filhos Para cada um dos filhos chama recursivamente o método case Node.TEXT_NODE: String trimmedtext = node.getnodevalue().trim(); if(trimmedtext.indexof("\n") < 0 && trimmedtext.length() > 0) displaytext[numberlines] += trimmedtext; break; Adiciona a saída o conteúdo (sem espaços) do nó de texto se ele for válido 7 XL XL, Java e DO 8 Ler um Documento XL com Java (DO) Ch16_02.java continuação... case Node.PROCESSING_INSTRUCTION_NODE: displaytext[numberlines] += "<?"; displaytext[numberlines] += node.getnodename(); String text = node.getnodevalue(); if (text!= null && text.length() > 0) displaytext[numberlines] += text; displaytext[numberlines] += "?>"; break; As instruções de processamento são simplesmente copiadas apropriadamente na saída (<? ---?>) case Node.CDATA_SECTION_NODE: displaytext[numberlines] += "<![CDATA["; displaytext[numberlines] += node.getnodevalue(); displaytext[numberlines] += "]]>"; break; Sessões CDATA são simplesmente copiadas na saída

5 XL XL, Java e DO 9 Ler um Documento XL com Java (DO) Ch16_02.java continuação... if (type == Node.ELEENT_NODE) displaytext[numberlines] = indentation.substring(0, indentation.length() - 4); displaytext[numberlines] += "</"; displaytext[numberlines] += node.getnodename(); displaytext[numberlines] += ">"; indentation += " "; A o elemento de fechamento ao marcador XL Campos do Objeto Node 10 Tipo de Campo static short ATTRIBUTE_NODE static short CDATA_SECTION_NODE static short COENT_NODE static short DOCUENT_FRAGENT_NODE static short DOCUENT_NODE static short DOCUENT_TYPE_NODE static short ELEENT_NODE static short ENTITY_NODE static short ENTITY_REFERENCE_NODE static short NOTATION_NODE static short PROCESSING_INSTRUCTION_NODE static short TEXT_NODE Define Um atributo Uma seção CDATA Um comentário Um fragmento de documento Declaração de um documento Um DTD Um elemento Uma entidade Um referência a entidade Uma notação Uma instrução de processamento Um nó de texto

6 XL XL, Java e DO 11 Encontrando Elementos pelo Nome (DO) Elementos específicos podem ser encontrados utilizando o método getelementbytagname Ex.: Procurar pelo elemento senator no documento XL O programa deve ser chamado do seguinte modo: java Ch16_03 ch16_01.xml senator Ch16_03.java Igual ao primeiro exemplo XL XL, Java e DO Encontrando Elementos pelo Nome (DO) package ismt; import javax.xml.parsers.*; import org.w3c.dom.*; public class Ch16_03 static String displaytext[] = new String[1000]; static int numberlines = 0; public static void main(string args[]) try DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = null; try builder = factory.newdocumentbuilder(); catch (ParserConfigurationException e) Document document = null; document = builder.parse(args[0]); Semelhante ao exemplo anterior mas executando somente para um nó específico Recupera uma lista de nós, do tipo especificado, utilizando um método da API NodeList nodelist = document.getelementsbytagname(args[1]); 12

7 XL XL, Java e DO 13 Encontrando Elementos pelo Nome (DO) Ch16_03.java continuação... if (nodelist!= null) for (int loopindex = 0; loopindex < nodelist.getlength(); loopindex++ ) childloop(nodelist.item(loopindex), ""); catch (Exception e) e.printstacktrace(system.err); Itera sobre a lista de nós do elemento e constrói o string de apresentação, usando o método childloop for(int loopindex = 0; loopindex < numberlines; loopindex++) System.out.println(displayText[loopIndex]); public static void childloop(node node, String indentation) Semelhante ao Apresenta o conteúdo exemplo anterior do elemento XL Java e SAX 14 Com SAX o processador trabalha sobre o documento e ao encontrar um nó, chama um método específico para realizar o tratamento SAX é dirigido por eventos, fazendo com que os métodos sejam chamados quando o processador encontrar os elementos específicos ch17_01.xml <?xml version="1.0" encoding="utf-8"?> <session> <committee type="monetary"> <title>finance</title> <number>17</number> <subject>donut Costs</subject> <date>7/15/2005</date> <attendees> <senator status="present"> <firstname>thomas</firstname> <lastname>smith</lastname> </senator> <senator status="absent"> <firstname>frank</firstname> <lastname>ccoy</lastname> </senator> <senator status="present"> <firstname>jay</firstname> <lastname>jones</lastname> </senator> </attendees> </committee> </session>

8 XL Ler um Documento XL com Java (SAX) 15 Ch17_02.java Ch17_02 é uma sub-classe de um tratador padrão SAX. Este tratador tem uma série de métodos (transp. 21) que são chamados em resposta package ismt; a eventos (nós específicos encontrados) étodos específicos devem ser reimplementados para manipular elementos específicos import java.io.*; import org.xml.sax.*; import javax.xml.parsers.*; import org.xml.sax.helpers.defaulthandler; public class Ch17_02 extends DefaultHandler static int numberlines = 0; static String indentation = ""; static String displaytext[] = new String[1000]; public static void main(string args[]) Ch17_02 parser = new Ch17_02(); parser.childloop(args[0]); Cria um objeto do tratador Chama o método que constrói a saída para o documento passado como argumento for (int loopindex = 0; loopindex < numberlines; loopindex++) System.out.println(displayText[loopIndex]); Apresenta a saída XL Ler um Documento XL com Java (SAX) 16 Ch17_02.java continuação... public void childloop(string uri) DefaultHandler saxhandler = this; SAXParserFactory saxfactory = SAXParserFactory.newInstance(); Cria um tratador para o documento. Este elemento irá indicar ao SAX qual objeto chamar quando encontrar os diferentes nós. try SAXParser saxparser = saxfactory.newsaxparser(); saxparser.parse(new File(uri), saxhandler); catch (Throwable t) Realiza o parsing do documento Cria uma fábrica para a criação do parser SAX Cria o parser que irá realizar o parsing do documento public void startdocument() étodo chamado quando o início do documento é encontrado displaytext[numberlines] += "<?xml version=\"1.0\" encoding=\""+ "UTF-8" + "\"?>";

9 XL Ler um Documento XL com Java (SAX) 17 Ch17_02.java continuação... public void processinginstruction(string target, String data) displaytext[numberlines] += "<?"; displaytext[numberlines] += target; if (data!= null && data.length() > 0) displaytext[numberlines] += ' '; displaytext[numberlines] += data; displaytext[numberlines] += "?>"; étodo chamado para manipular uma instrução de processamento Observar que os parâmetros já são passados automaticamente Ch17_02.java continuação... XL Ler um Documento XL com Java (SAX) public void startelement(string uri, String localname, String qualifiedname, Attributes attributes) étodo chamado para manipular um elemento de início Observar que os parâmetros já são passados automaticamente indentation += " "; displaytext[numberlines] += '<'; displaytext[numberlines] += qualifiedname; if (attributes!= null) int numberattributes = attributes.getlength(); for (int loopindex = 0; loopindex < numberattributes; loopindex++) displaytext[numberlines] += ' '; displaytext[numberlines] += attributes.getqname(loopindex); displaytext[numberlines] += "=\""; displaytext[numberlines] += attributes.getvalue(loopindex); displaytext[numberlines] += '"'; displaytext[numberlines] += '>'; Se existirem atributos constrói sua apresentação Verifica se o elemento tem atributos 18

10 Ch17_02.java continuação... XL Ler um Documento XL com Java (SAX) public void characters(char characters[], int start, int length) String characterdata = (new String(characters, start, length)).trim(); if(characterdata.indexof("\n") < 0 && characterdata.length() > 0) displaytext[numberlines] += characterdata; public void endelement(string uri, String localname, String qualifiedname) indentation = indentation.substring(0, indentation.length() - 4); étodo utilizado para manipular texto displaytext[numberlines] += "</"; displaytext[numberlines] += qualifiedname; displaytext[numberlines] += '>'; Posição em que começa o texto do elemento étodo utilizado para manipular o final do elemento 19 XL Ler um Documento XL com Java (SAX) 20 Ch17_02.java continuação... public void warning(saxparseexception exception) System.err.println("Warning: " + exception.getessage()); public void error(saxparseexception exception) System.err.println("Error: " + exception.getessage()); public void fatalerror(saxparseexception exception) System.err.println("Fatal error: " + exception.getessage()); étodos utilizados para manipular os erros que possam ocorrer durante a manipulação do documento XL

11 XL étodos da Classe DefaultHandler 21 DefaultHandler() void endocument() void startdocument étodo characters(char[] ch, int start, int length) void endelement(string uri, String localname, String qname) void error(saxparseexception e) void fatalerror(saxparseexception e) void ignorablewhitespace(char[] ch, int start, int length) void processinginstruction(string target, String data) void startelement(string uri, String localname, String qname, Attributes attributes) void startprefixapping(string prefix, String uri) Construtor Objetivo anipula nós de texto anipula o final do documento anipula o final do elemento anipula um erro recuperável Avisa de um erro fatal anipula espaços descartáveis anipula inst. processamento anipula início do documento anipula o início de um elemento anipula o início de um namespace Outros existem: consultar XL XL, Java e DO Encontrando Elementos pelo Nome (SAX) package ismt; import java.io.*; import org.xml.sax.*; import javax.xml.parsers.*; import org.xml.sax.helpers.defaulthandler; 22 Ch17_03.java public class Ch17_03 extends DefaultHandler static int numberlines = 0; static String indentation = ""; static String displaytext[] = new String[1000]; static boolean displayboolean; static String findnode; public static void main(string args[]) Ch17_03 obj = new Ch17_03(); findnode = args[1]; obj.childloop(args[0]); Variáveis que serão usadas para a busca pelo elemento Argumento que identifica o elemento que será procurado for(int index = 0; index < numberlines; index++) System.out.println(displayText[index]);

12 XL XL, Java e DO 23 Encontrando Elementos pelo Nome (SAX) Ch17_03.java continuação... Idêntico ao anterior public void childloop(string uri) DefaultHandler saxhandler = this; SAXParserFactory saxfactory = SAXParserFactory.newInstance(); try SAXParser saxparser = saxfactory.newsaxparser(); saxparser.parse(new File(uri), saxhandler); catch (Throwable t) Ch17_03.java continuação... XL XL, Java e DO Encontrando Elementos pelo Nome (SAX) public void startelement(string uri, String localname, String qualifiedname, Attributes attributes) Verifica se o nó é o que se está if(qualifiedname.equals(findnode)) procurando. Caso seja, define displayboolean=true; displayboolean para verdadeiro if (displayboolean) Se a variável displayboolean for verdadeira o elemento será indentation += " "; inserido displaytext[numberlines] += '<'; displaytext[numberlines] += qualifiedname; if (attributes!= null) int numberattributes = attributes.getlength(); for (int loopindex = 0; loopindex < numberattributes; loopindex++) displaytext[numberlines] += ' '; displaytext[numberlines] += attributes.getqname(loopindex); displaytext[numberlines] += "=\""; displaytext[numberlines] += attributes.getvalue(loopindex); displaytext[numberlines] += '"'; displaytext[numberlines] += '>'; 24

13 Ch17_03.java continuação... XL XL, Java e DO Encontrando Elementos pelo Nome (SAX) public void characters(char characters[], int start, int length) if(displayboolean) String characterdata = (new String(characters, start, length)).trim(); if(characterdata.indexof("\n") < 0 && characterdata.length() > 0) displaytext[numberlines] += characterdata; Se a variável displayboolean for verdadeira o elemento de texto será inserido public void endelement(string uri, String localname, String qualifiedname) if(displayboolean) indentation = indentation.substring(0, indentation.length() - 4); displaytext[numberlines] += "</"; displaytext[numberlines] += qualifiedname; displaytext[numberlines] += '>'; if(qualifiedname.equals(findnode)) displayboolean=false; Após ter encontrado o nó do final do elemento procurado, define-se displayboolean para false para as próximas buscas 25 XL XL, Java e DO 26 Encontrando Elementos pelo Nome (SAX) Ch17_03.java continuação... public void warning(saxparseexception exception) System.err.println("Warning: " + exception.getessage()); public void error(saxparseexception exception) System.err.println("Error: " + exception.getessage()); public void fatalerror(saxparseexception exception) System.err.println("Fatal error: " + exception.getessage()); Semelhante ao do exemplo anterior

14 XL APIs para anipulação de XL 27 Existem diversas API para a serialização de objetos Java como documentos XL Uma bastante interessante é a Simple XL Serialization: APIs como esta podem ser usadas para a troca de informações entre sistema criando e lendo de forma bastante simples documentos XL que representam os objetos de uma aplicação. Para maiores informações: XL Exercícios 28 Exercício cio 1: Compilar os programas, analisar o código e verificar a saída de cada um deles. Exercício cio 2: Escrever um programa Java que leia o documento XL ch16_01.xml e que procure o elemento <firstname>thomas</firstname>. Quando o encontrar o elemento, o programa deve escrever na saída de texto == > Encontrei o Thomas < ==. Exercício cio 3: Escrever um programa Java que leia o documento XL ch16_01.xml e que apresente uma mensagem indicando quantos elementos do tipo senator existem no documento.

Manipulação de XML JAXP - DOM

Manipulação de XML JAXP - DOM UNIPÊ Centro Universitário de João Pessoa Desenvolvimento para Web - XML Manipulação de XML JAXP - DOM Prof. Eduardo Ribas ducaribas@gmail.com 1 4 JAXP DOM O que é DOM? Document Object Model API padrão

Leia mais

Processamento de dados XML

Processamento de dados XML Processamento de dados XML Vanessa Braganholo Vanessa Braganholo Introdução } Dois pontos básicos: } Como escrever um documento XML? } Como ler um documento XML? 2 Escrevendo um documento XML } Documentos

Leia mais

XML: uma introdução prática X100. Helder da Rocha (helder@argonavis.com.br)

XML: uma introdução prática X100. Helder da Rocha (helder@argonavis.com.br) XML: uma introdução prática X100 Helder da Rocha (helder@argonavis.com.br) Atualizado em setembro de 2001 1 Programação com XML Há duas maneiras populares para manipular (interpretar, gerar, extrair dados

Leia mais

DOM Document Object Model

DOM Document Object Model DOM Document Object Model Vanessa Braganholo Vanessa Braganholo DOM API padrão para processamento de dados XML baseado em um modelo de árvore o parser constrói na memória um objeto representando a árvore

Leia mais

Java e XML Processamento de documentos XML com Java

Java e XML Processamento de documentos XML com Java Guia de Consulta Rápida Java e XML Processamento de documentos XML com Java 2 a edição Renê Rodrigues Veloso Novatec Copyright 2007 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela

Leia mais

Exercícios de Revisão Java Básico

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

Leia mais

insfcanceof new public switch transient while byte continue extends for int null

insfcanceof 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 mais

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

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

Leia mais

Como construir um compilador utilizando ferramentas Java

Como construir um compilador utilizando ferramentas Java Como construir um compilador utilizando ferramentas Java p. 1/3 Como construir um compilador utilizando ferramentas Java Aula 5 Análise Léxica com JavaCC Prof. Márcio Delamaro delamaro@icmc.usp.br Como

Leia mais

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

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

Leia mais

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

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

Leia mais

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

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

Leia mais

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

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

Leia mais

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

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

Leia mais

Módulo 02 Programação Orientada a Objetos. Última atualização: 07/06/2010

Módulo 02 Programação Orientada a Objetos. Última atualização: 07/06/2010 Módulo 02 Programação Orientada a Objetos Última atualização: 07/06/2010 1 Objetivos Definir conceitos de orientação a objetos: o abstração, encapsulamento, pacotes. Discutir reutilização de código em

Leia mais

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

Sintaxe 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 mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:

Leia mais

ESTUDO DA LINGUAGEM XML E SUA INTEGRAÇÃO COM

ESTUDO DA LINGUAGEM XML E SUA INTEGRAÇÃO COM Tatianne Domingues de Faria Bini Dias RA. 0301758-8 sem ESTUDO DA LINGUAGEM XML E SUA INTEGRAÇÃO COM A PLATAFORMA JAVA Jaguariúna 2006 Tatianne Domingues de Faria Bini Dias RA. 0301758-8 sem ESTUDO DA

Leia mais

Desenvolvimento OO com Java Orientação a objetos básica

Desenvolvimento OO com Java Orientação a objetos básica Desenvolvimento OO com Java Orientação a objetos básica Vítor E. Silva Souza (vitor.souza@ufes.br) http://www.inf.ufes.br/~vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal

Leia mais

Módulo 06 Desenho de Classes

Mó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 mais

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

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

Leia mais

public Agenda() { compromissos = null; } public int getnumerodecompromissos() { if (compromissos==null) return 0; else return compromissos.

public 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 mais

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

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

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Cartão de fidelização de clientes das distribuidoras de combustível.

Programaçã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 mais

Java 2 Standard Edition Como criar classes e objetos

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

Leia mais

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

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

Leia mais

Processamento de dados XML

Processamento de dados XML Processamento de dados XML César Vittori cvittori@inf.ufrgs.br Outubro de 2000 Resumo Considerações no desenvolvimento de software para processar dados XML. Processamento de uma DTD para interpretar marcação

Leia mais

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

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

Leia mais

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

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

Leia mais

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

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

Leia mais

SISTEMAS DISTRIBUÍDOS

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

Leia mais

5 Caso de estudo O cartão fidelidade

5 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 mais

A Introdução à Programação Orientada a Objetos. Programação e Sistemas de Informação

A Introdução à Programação Orientada a Objetos. Programação e Sistemas de Informação A Introdução à Programação Orientada a Objetos Programação e Sistemas de Informação Objectos (1) Objectos são coisas que temos no mundo real e abstraímos no mundo virtual para que possamos manipulá-los

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ

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

Leia mais

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi XML e Banco de Dados de Internet Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi Motivação Diversas aplicações Web utilizam Fontes de Dados (BD); Arquitetura Cliente-Servidor (2

Leia mais

Programação por Objectos. Java

Programaçã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 mais

UNIP - 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 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 mais

Programação Orientada a Objetos e Java - Introdução. Carlos Lopes

Programação Orientada a Objetos e Java - Introdução. Carlos Lopes Programação Orientada a Objetos e Java - Introdução Carlos Lopes POO e Java Objetivo: proporcionar uma visão dos conceitos de POO e do seu uso na estruturação dos programas em Java. Classes e objetos em

Leia mais

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

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

Leia mais

Analisar os sistemas operacionais apresentados na figura e responder as questões abaixo: Identificar

Analisar os sistemas operacionais apresentados na figura e responder as questões abaixo: Identificar Projeto Integrador Sistemas Operacionais Prof.ª Lucilia Ribeiro GTI 3 Noturno Grupo: Anderson Alves da Mota. André Luiz Silva. Misael bezerra dos santos. Sandro de almeida silva. Analisar os sistemas operacionais

Leia mais

Tabelas (arrays) (vetores, matrizes, etc) Algoritmos de pesquisa Algoritmos de ordenação

Tabelas (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 mais

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

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

Leia mais

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

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

Leia mais

Projeto de Software Orientado a Objeto

Projeto 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 mais

Trabalho Prático Nº1 Introdução ao C#.NET

Trabalho Prático Nº1 Introdução ao C#.NET Trabalho Prático Nº1 Introdução ao C#.NET 1. OBJECTIVOS - Entender o contexto da plataforma.net - Desenvolver programas simples em C#.NET - Saber efectuar entradas de dados em modo Consola e Windows Forms

Leia mais

BSI UFRPE Prof. Gustavo Callou gcallou@gmail.com

BSI UFRPE Prof. Gustavo Callou gcallou@gmail.com BSI UFRPE Prof. Gustavo Callou gcallou@gmail.com HelloWorld.java: public class HelloWorld { public static void main (String[] args) { System.out.println( Hello, World ); } } Identificadores são usados

Leia mais

THREADS EM JAVA. George Gomes Cabral

THREADS 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 mais

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

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

Leia mais

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5

JavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5 JavaScript Diego R. Frank, Leonardo Seibt FIT Faculdades de Informática de Taquara Fundação Educacional Encosta Inferior do Nordeste Av. Oscar Martins Rangel, 4500 Taquara RS Brasil difrank@terra.com.br,

Leia mais

Programaçã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. 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 mais

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

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

Leia mais

Programação Orientada a Objetos. Encapsulamento

Programaçã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 mais

UNIDADE III JAVA SERVER PAGES

UNIDADE III JAVA SERVER PAGES UNIDADE III JAVA SERVER PAGES MODELO JSP Um dos principais objetivos da tecnologia J2EE é fazer com que as tarefas sejam realizadas de forma separada. Eliminando as dependências, componentes J2EE tornam-se

Leia mais

Pontifí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 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 mais

Simulado de Linguagem de Programação Java

Simulado 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 mais

Programação Orientada a Objetos em Java. Threads Threads Threads. Threads

Programação Orientada a Objetos em Java. Threads Threads Threads. Threads Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Threads Threads Threads Threads Professor: César Melo Slides baseados

Leia mais

Guia de Fatores de Qualidade de OO e Java

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

Leia mais

XML APIs. Aplicações Baseadas em XML

XML APIs. Aplicações Baseadas em XML XML APIs Material parcialmente extraído de: Alan Robinson em http://industry.ebi.ac.uk/~alan/xmlworkshop/presentations/ Dickson K.W. Chiu em http://www.cse.cuhk.edu.hk/~kwchiu/csc3530/ Curso de Mestrado/Doutorado

Leia mais

Análise de Programação

Aná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 mais

BC0505 Processamento da Informação

BC0505 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 mais

UNIVERSIDADE FEDERAL DO PARANÁ

UNIVERSIDADE FEDERAL DO PARANÁ CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 05 APRESENTAÇÃO: Nesta aula vamos ver como se faz a criação de Métodos

Leia mais

Projeto 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. 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 mais

2 Orientação a objetos na prática

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

Leia mais

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

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

Leia mais

Chamadas Remotas de Procedimentos (RPC) O Conceito de Procedimentos. RPC: Programa Distribuído. RPC: Modelo de Execução

Chamadas 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 mais

Introdução à Tecnologia Web

Introdução à Tecnologia Web Introdução à Tecnologia Web JavaScript Sintaxe da Linguagem: Delimitadores e etc Profª MSc. Elizabete Munzlinger JavaScript Sintaxe da Linguagem Índice 1 SINTAXE DA LINGUAGEM... 2 1.1 Delimitadores de

Leia mais

JAVA 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 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 mais

Reuso com Herança a e Composiçã

Reuso 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 mais

Técnicas de Programação II

Técnicas de Programação II Técnicas de Programação II Aula 06 Orientação a Objetos e Classes Edirlei Soares de Lima Orientação a Objetos O ser humano se relaciona com o mundo através do conceito de objetos.

Leia mais

A Linguagem Java. Alberto Costa Neto DComp - UFS

A Linguagem Java. Alberto Costa Neto DComp - UFS A Linguagem Java Alberto Costa Neto DComp - UFS 1 Roteiro Comentários Variáveis Tipos Primitivos de Dados Casting Comandos de Entrada e Saída Operadores Constantes 2 Comentários /** Classe para impressão

Leia mais

Threads e Sockets em Java. Threads em Java. Programas e Processos

Threads e Sockets em Java. Threads em Java. Programas e Processos Threads em Java Programas e Processos Um programa é um conceito estático, isto é, um programa é um arquivo em disco que contém um código executável por uma CPU. Quando este programa é executado dizemos

Leia mais

Prototype, um Design Patterns de Criação

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

Leia mais

EMENTA DO CURSO. Tópicos:

EMENTA DO CURSO. Tópicos: EMENTA DO CURSO O Curso Preparatório para a Certificação Oracle Certified Professional, Java SE 6 Programmer (Java Básico) será dividido em 2 módulos e deverá ter os seguintes objetivos e conter os seguintes

Leia mais

Um pouco do Java. Prof. Eduardo

Um pouco do Java. Prof. Eduardo Um pouco do Java Prof. Eduardo Introdução A tecnologia JAVA é composta pela linguagem de programação JAVA e pela plataforma de desenvolvimento JAVA. Os programas são escritos em arquivos-texto com a extensão.java.

Leia mais

ÇÃO COM OBJECTOS PROGRAMAÇÃ. Programação com Objectos. Programação com Objectos TUDO É UM OBJECTO TUDO É UM OBJECTO ÍNDICE.

ÇÃO COM OBJECTOS PROGRAMAÇÃ. Programação com Objectos. Programação com Objectos TUDO É UM OBJECTO TUDO É UM OBJECTO ÍNDICE. PROGRAMAÇÃ ÇÃO COM OBJECTOS TUDO É UM OBJECTO Programação com Objectos ÍNDICE Introdução aos objectos Polimorfismo TUDO É UM OBJECTO Interface e classes internas Instruções de controlo Guardar os objectos

Leia mais

Paradigmas da Programação PPROG. Linguagem JAVA. Interfaces. (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33

Paradigmas 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 mais

Descrição. Implementação. Departamento de Informática e Estatística Universidade Federal de Santa Catarina LAB 4 Transferência de Arquivos

Descrição. Implementação. Departamento de Informática e Estatística Universidade Federal de Santa Catarina LAB 4 Transferência de Arquivos Departamento de Informática e Estatística Universidade Federal de Santa Catarina LAB 4 Transferência de Arquivos Descrição Implemente nesta atividade de laboratório um programa em Java utilizando threads

Leia mais

Documentação Usando o Javadoc

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

Leia mais

Orientação a Objetos

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

Leia mais

O programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo.

O programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo. 7. Carregando e mostrando imagens locais Esta aula complementa os estudos de programação de interfaces gráficas em Java mostrando como podemos carregar imagens de arquivos locais ou da Internet para uso

Leia mais

Conversão de Tipos e Arrays

Conversã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 mais

Programação Visual TIC - 3PA. Lista de Exercícios 02

Programação Visual TIC - 3PA. Lista de Exercícios 02 Programação Visual TIC - 3PA Lista de Exercícios 02 Professor: Edwar Saliba Júnior 1) Elabore um programa para simular uma conta de poupança. Crie uma classe contacorrente com os seguintes atributos: saldo,

Leia mais

Encapsulamento de Dados

Encapsulamento 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 mais

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

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

Leia mais

Algoritmia e Programação APROG. Linguagem JAVA. Básico. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31

Algoritmia e Programação APROG. Linguagem JAVA. Básico. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31 APROG Algoritmia e Programação Linguagem JAVA Básico Nelson Freire (ISEP DEI-APROG 2012/13) 1/31 Linguagem Java Estrutura de um Programa Geral Básica Estruturas de Dados Variáveis Constantes Tipos de Dados

Leia mais

Sintaxe Básica de Java Parte 1

Sintaxe Básica de Java Parte 1 Sintaxe Básica de Java Parte 1 Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marcioubeno.com Fonte: Material da Profª Karina Oliveira Estrutura de Programa Um programa

Leia mais

Criar a classe Aula.java com o seguinte código: Compilar e Executar

Criar 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 mais

3 Classes e instanciação de objectos (em Java)

3 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 mais

Aula 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. 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 mais

Implementação de Classe e Auto-Relacionamento em Java

Implementação de Classe e Auto-Relacionamento em Java UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Implementação de Classe e Auto-Relacionamento em Java 1)Introdução Um modelo de Diagrama de Classes representa a estrutura definida

Leia mais

Universidade da Beira Interior. Sistemas Distribuídos

Universidade da Beira Interior. Sistemas Distribuídos Folha 6-1 Sincronização de Threads A sincronização de Threads em Java é baseada no conceito do Monitor (de Hoare). Cada objecto Java tem associado um monitor (ou lock ) que pode ser activado se a palavra

Leia mais

Simbiose entre Tecnologias: XML e Java

Simbiose entre Tecnologias: XML e Java Simbiose entre Tecnologias: XML e Java Marcio H. Zuchini USF - Itatiba mhzuchini@yahoo.com.br Oclair G. Prado Unisal - Americana oclair.prado@am.unisal.br Márcio Henrique Zuchini (Mestre em Engenharia

Leia mais

Programa de Computador que funciona em Rede

Programa de Computador que funciona em Rede Programa de Computador que funciona em Rede professor Robinson Vida Noronha 1 Paradigma Um programa rodando em rede é como uma loja. 2 Uma loja é composta por Vendedores Vendedores 3 Um loja deve servir

Leia mais

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

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

Leia mais

Programação Orientada a Objetos em java. Polimorfismo

Programaçã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 mais