Superintendência de Distribuição

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

Download "Superintendência de Distribuição"

Transcrição

1 Superintendência de Distribuição DEPARTAMENTO DE MEDIÇÃO DA DISTRIBUIÇÃO - PROTOCOLO PARA COLETA DE SISTEMAS DE INFORMAÇÕES DE MEDIDORES maio/2016 CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet

2 HISTÓRICO DE REVISÃO Informações sobre qualquer modificação neste documento Data Nome/Tel. Itens alterados maio/2016 Marcio Elaboração desta Especificação. CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 2-21

3 SUMÁRIO 1 - PROTOCOLO Composição Conceitos Descrição do protocolo Exemplos do protocolo 2 Código JAVA de exemplo de receptor de protocolo 2.1 Main. Java Tarefa.java Protocolo.java DESCRIÇÃO Este documento especifica o protocolo de comunicação a ser utilizado nos sistemas automáticos de leitura de medidores de energia das unidades do Grupo B. 1 - PROTOCOLO Composição O protocolo é composto por 31 bytes expressos em pares de dígitos hexadecimais ou decimais, totalizando 62 dígitos ou caracteres. Por que 1 byte = 2 caracteres hexadecimais? 1 byte = 8 bits = 2^8 = hex = 2 * 4 bits = 2^4 * 2^4 = 16 * 16 = Conceitos 1. MSB (Most Significant Byte): Referente à ordem dos bytes, onde neste caso o byte mais significativo é apresentado primeiro (da esquerda para direita), ou seja, na ordem direta; 2. LSB (Least Significant Byte): Neste caso o byte menos significativo é apresentado primeiro, ou seja, a sequência natural dos dados ficam da direita para a esquerda, na ordem inversa; 3. Hexadecimal: Número de base 16, apresentado utilizando notação com o prefixo 0x ; 4. Conversão do dado real para o protocolo: Se for necessário converter para hexadecimal, sempre realizar esta operação primeiro. Caso seja necessário inverter (LSB), realize esta operação somente após a conversão (se houver) para hexadecimal; 5. Conversão do protocolo para o dado real: Se for necessário inverter (LSB), sempre realizar esta operação primeiro. Caso seja necessário converter de hexadecimal para decimal, realize esta operação somente após a inversão (se houver). 6. NIO (número interno operacional) é o nome utilizado na Copel para o medidor. 7. Concentrador: Elemento da rede de comunicação responsável pela concentração das leituras dos medidores e envio ao MDM (banco de dados). CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 3-21

4 1.3 - Descrição do protocolo O concentrador de dados será o responsável por fazer a ponte entre a rede ethernet e a rede de comunicação com os medidores. O concentrador funcionará como um repassador de informações para o banco de dados. Deve ser definido um endereço (IP/PORTA) para comunicação com o servidor (o concentrador deverá ter a capacidade de hospedar um servidor de páginas HTTP para esta configuração) que, por sua vez, deve escutar esta porta esperando os dados do concentrador. Toda vez que o concentrador tiver uma informação nova ela será encaminhada para o servidor que deverá descompactar/interpretar o pacote e salvar os dados. Função Informar Dados Este pacote é enviado pelo concentrador toda vez que o mesmo recebe a consumo de algum equipamento. Ele serve para informar ao servidor o status de um consumidor específico. Rede Sequência Comando Subcomando ID Leitura Status Longitude (inteiro) Longitude (decimal) Longitude (sinal) Latitude (inteiro) Latitude (decimal) Latitude (sinal) Nº do Equipamento Rede: descreve o número da rede em que o concentrador está trabalhando, como existe apenas um concentrador por rede este campo descreve de qual concentrador o pacote foi enviado; Sequência: Número que indica a "comunicação" à qual o pacote se refere. Caso o pacote seja a resposta do concentrador ao servidor este campo deve conter o mesmo número enviado pelo servidor na requisição do mesmo, caso contrário (pacote gerado de maneira ativa para o servidor) o campo deverá conter zero (0); Comando: 01 Dados de informação; Sub-comando: 01 Informação do equipamento com o ID do campo ID ; CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 4-21

5 ID: descreve o número de identificação do equipamento que enviou o pacote, para sistemas com um equipamento por consumidor este campo descreve a quem pertence à leitura; Leitura: descreve o consumo ativo de cada consumidor. Os dados são enviados no padrão BCD, por exemplo: Campo Leitura = Consumo = W ou ,412 KW Status: Indica o status do consumidor em questão (este campo está reservado para futuras aplicações onde o equipamento pode reportar faltas de energia, falhas na comunicação com o medidor e outros eventos a serem definidos) Em condições normais deve ser preenchido com zeros outras condições serão definidas futuramente; Longitude Inteiro: Parte inteira da Longitude; Longitude Decimal: Parte decimal da Longitude. Está no formato Little Endian e o valor está alinhado à esquerda, com 6 casas. Exemplo: Para uma longitude 120,1: Longitude decimal = = 0x0186A0(hexa) No pacote será: Byte Valor A Longitude sinal: Indicação de positivo ou negativo do dado de Longitude 0 positivo, 1 negativo; Latitude Inteiro: Parte inteira da Latitude Latitude Decimal: Parte decimal da Latitude. Está no formato Little Endian e o valor está alinhado à esquerda, com 6 casas. Exemplo: Para uma latitude 50,0454: Latitude decimal = = = 0x00B158(hexa) No pacote será: Byte Valor 58 B1 00 CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 5-21

6 Latitude sinal: Indicação de positivo ou negativo do dado de Latitude 0 positivo, 1 negativo; Número do Equipamento: Descreve o número único que identifica o consumidor. Os dados são enviados no padrão BCD, por exemplo: Campo Número do Equipamento = Equipamento = Fluxo da informação Neste caso a comunicação será iniciada ativamente pelo concentrador. Ele irá abrir uma comunicação em um IP/PORTA especifico (no caso o do servidor no qual a aplicação está rodando) segundo o protocolo TCP/IP e enviar o pacote de Informar Dados. Tendo como base a premissa de que o concentrador vai apenas informar os dados e não irá se preocupar com a recepção deles pela aplicação, já que o servidor não vai responder nada ao concentrador após receber os dados do mesmo e o próprio protocolo TCP/IP possui garantia de entrega, o campo Sequência não possui sentido e será preenchido com zeros (0). Possibilitando desta forma uma diferenciação (caso necessário) dos pacotes enviados de forma ativa do concentrador daqueles enviados como resposta à requisição do servidor (previstos para futuras aplicações). CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 6-21

7 1.4 - Exemplos do protocolo Exemplos do protocolo (índice de 0 até 30, com 31 bytes no total) Caso 1 Rede Sequência Comando Subcomando ID Leitura Status Longitude (inteiro) Longitude (decimal) Longitude (sinal) Latitude (inteiro) Latitude (decimal) Latitude (sinal) Nº do Equipamento CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 7-21

8 Detalhamento do protocolo caso 1 Tipo de dado Posição/índice Ordem Métrica Entrada Saída Rede 0 e 1 MSB (direta) Hexadecimal 0x Sequência 2, 3, 4 e 5 MSB (direta) Hexadecimal 0x Comando 6 MSB (direta) Hexadecimal 0x01 1 Subcomando 7 MSB (direta) Hexadecimal 0x01 1 Id 8 e 9 MSB (direta) Hexadecimal 0x Leitura 10, 11, 12, 13 e 14 LSB (inversa) Decimal (15239 kwh) Status 15 MSB (direta) Hexadecimal 0x00 0 Longitude (inteiro) 16 MSB (direta) Hexadecimal 0x00 0 Longitude (decimal) 17, 18 e 19 LSB (inversa) Hexadecimal 0x Longitude (sinal) 20 MSB (direta) Decimal 00 + (positivo) Latitude (inteiro) 21 MSB (direta) Hexadecimal 0x00 0 Latitude (decimal) 22, 23 e 24 LSB (inversa) Hexadecimal 0x Latitude (sinal) 25 MSB (direta) Decimal 00 + (positivo) Nº do equipamento 26, 27, 28, 29 e 30 LSB (inversa Decimal CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 8-21

9 Caso 2: Rede Sequência Comando Subcomando ID Leitura Status C Longitude (inteiro) Longitude (decimal) Longitude (sinal) Latitude (inteiro) Latitude (decimal) Latitude (sinal) Nº do Equipamento F4 2D A CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 9-21

10 Detalhamento do caso 2 Tipo de dado Posição/índice Ordem Métrica Entrada Saída Rede 0 e 1 MSB (direta) Hexadecimal 0x Sequência 2, 3, 4 e 5 MSB (direta) Hexadecimal 0x Comando 6 MSB (direta) Hexadecimal 0x01 1 Subcomando 7 MSB (direta) Hexadecimal 0x01 1 Id 8 e 9 MSB (direta) Hexadecimal 0x002C 44 Leitura 10, 11, 12, 13 e 14 LSB (inversa) Decimal (11729 kwh) Status 15 MSB (direta) Hexadecimal 0x00 0 Longitude (inteiro) 16 MSB (direta) Hexadecimal 0x31 49 Longitude (decimal) 17, 18 e 19 LSB (inversa) Hexadecimal 0xF42D Longitude (sinal) 20 MSB (direta) Decimal 01 - (negativo) Latitude (inteiro) 21 MSB (direta) Hexadecimal 0x19 25 Latitude (decimal) 22, 23 e 24 LSB (inversa) Hexadecimal 0x699A Latitude (sinal) 25 MSB (direta) Decimal 01 - (negativo) Nº do equipamento 26, 27, 28, 29 e 30 LSB (inversa Decimal CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 10-21

11 2 - Código JAVA de exemplo de receptor de protocolo Main.java package com.copel.telemedicao; import java.io.ioexception; import java.net.bindexception; import java.net.serversocket; import java.net.socket; import java.util.concurrent.executorservice; import java.util.concurrent.executors; import org.apache.log4j.logger; /** C * */ public class Main { private static final Logger log = Logger.getLogger(Main.class); private static final int PORTA = 12345; public static void main(string[] args) { try { final ServerSocket serversocket = new ServerSocket(PORTA); new Thread("portListener") { public void run() { try { log.info("escutando na porta " + serversocket.getlocalport() + "..."); Socket socket = null; while ((socket = serversocket.accept())!= null) { log.info("conectado! - " + socket.tostring()); ExecutorService es = Executors.newSingleThreadExecutor(); es.submit(new Tarefa(socket)); CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 11-21

12 catch (Exception e) { log.error(e); finally { if (!serversocket.isclosed()) { try { serversocket.close(); log.info("fechando porta: " + serversocket.getlocalport() + "..."); catch (IOException e) { log.error(e); ;.start(); catch (BindException be) { log.error("porta " + PORTA + " ja em uso! ", be); catch (Exception e) { log.error(e); CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 12-21

13 2.2 - Tarefa.java package com.copel.telemedicao; import java.io.ioexception; import java.net.socket; import org.apache.log4j.logger; /** C * */ public class Tarefa implements Runnable { private final Socket socket; private final static Logger log = Logger.getLogger(Tarefa.class); private final static char[] hexarray = " ABCDEF".toCharArray(); public Tarefa(Socket socket) { this.socket = public void run() { log.info("entrou na tarefa! " + socket.tostring()); int lido = -1; byte[] buffer = new byte[31 * 256]; byte[] arraydados = null; try { while ((lido = socket.getinputstream().read(buffer)) > -1) { arraydados = new byte[lido]; System.arraycopy(buffer, 0, arraydados, 0, lido); /** * Neste ponto o protocolo pode ser utilizado de diversas * maneiras diferentes. O array de bytes foi transformado em uma * unica string, em array de pares de string (hexadecimal * literal), e depois montado um objeto. */ CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 13-21

14 log.info("array de bytes (em decimal): " + printararraydebytes(arraydados)); String umastringso = bytestohex(arraydados); log.info("string unica: " + umastringso); if (umastringso.length() == 62) { try { String[] arraydeparesdestring = umastringso.split("(?<=\\g.{2)"); log.info("array de pares (hex): " + printararraydepares(arraydeparesdestring)); Protocolo protocolo = new Protocolo( arraydeparesdestring); log.info("objeto montado: " + protocolo.tostring()); catch (NumberFormatException nfe) { log.error("erro ao montar o protocolo, dados invalidos: " + umastringso + ": " + nfe.getmessage()); else { throw new Exception( "Protocolo com tamanho diferente de 31 bytes!"); catch (Exception e) { log.error("erro ao receber/enviar leitura: " + bytestohex(arraydados) + " " + e.getmessage()); finally { try { socket.close(); log.info("desconectado! " + socket.tostring()); catch (IOException e) { log.error("erro ao fechar o socket: " + e.getmessage()); private static String bytestohex(byte[] bytes) { char[] hexchars = new char[bytes.length * 2]; for (int j = 0; j < bytes.length; j++) { int v = bytes[j] & 0xFF; hexchars[j * 2] = hexarray[v >>> 4]; CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 14-21

15 hexchars[j * 2 + 1] = hexarray[v & 0x0F]; return new String(hexChars); private static String printararraydebytes(byte[] arraydebytes) { StringBuilder sb = new StringBuilder(); for (byte b : arraydebytes) { int i = b; if (i < 0) { i = i; sb.append(i).append(" "); return sb.tostring().trim(); private static String printararraydepares(string[] arraydeparesdestring) { StringBuilder sb = new StringBuilder(); for (String s : arraydeparesdestring) { sb.append(s).append(" "); return sb.tostring().trim(); CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 15-21

16 2.3 - Protocolo.java package com.copel.telemedicao; import java.io.serializable; /** C * */ public class Protocolo implements Serializable{ //serial random private static final long serialversionuid = L; private int rede; private int sequencia; private int comando; private int subcomando; private int id; private int leitura; private int status; private double latitude; private double longitude; private long nio; public Protocolo() { public Protocolo(String[] protocolo) throws NumberFormatException { rede = Integer.parseInt(protocolo[0] + protocolo[1], 16); sequencia = Integer.parseInt(protocolo[2] + protocolo[3] + protocolo[4] + protocolo[5], 16); comando = Integer.parseInt(protocolo[6], 16); subcomando = Integer.parseInt(protocolo[7], 16); id = Integer.parseInt(protocolo[8] + protocolo[9], 16); //LSB -> Inverter a ordem dos bytes //Apos a inversao, foram removidas as 3 ultimas casas para converter Wh em kwh leitura = Integer.parseInt((protocolo[14] + protocolo[13] + protocolo[12] + protocolo[11] + protocolo[10]).substring(0, 7)); CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 16-21

17 status = Integer.parseInt(protocolo[15], 16); //Longitude recebido por partes int longitudeinteiro = Integer.parseInt(protocolo[16], 16); //LSB -> Inverter a ordem dos bytes e depois converter o hexadecimal int longitudedecimal = Integer.parseInt(protocolo[19] + protocolo[18] + protocolo[17], 16); if ((longitudedecimal > 0) (longitudeinteiro > 0)) { longitude = (double) longitudeinteiro + (longitudedecimal * ); if (Integer.parseInt(protocolo[20]) == 1) { longitude = longitude * -1; else { longitude = 0d; //Para a latitude sao as mesmas regras da longitude int latitudeinteiro = Integer.parseInt(protocolo[21], 16); int latitudedecimal = Integer.parseInt(protocolo[24] + protocolo[23] + protocolo[22], 16); if ((latitudedecimal > 0) (latitudeinteiro > 0)) { latitude = (double) latitudeinteiro + (latitudedecimal * ); if (Integer.parseInt(protocolo[25]) == 1) { latitude = latitude * -1; else { latitude = 0d; nio = Long.parseLong(protocolo[30] + protocolo[29] + protocolo[28] + protocolo[27] + protocolo[26]); public int getrede() { return rede; public void setrede(int rede) { this.rede = rede; public int getsequencia() { return sequencia; CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 17-21

18 public void setsequencia(int sequencia) { this.sequencia = sequencia; public int getcomando() { return comando; public void setcomando(int comando) { this.comando = comando; public int getsubcomando() { return subcomando; public void setsubcomando(int subcomando) { this.subcomando = subcomando; public int getid() { return id; public void setid(int id) { this.id = id; public int getleitura() { return leitura; public void setleitura(int leitura) { this.leitura = leitura; public int getstatus() { return status; public void setstatus(int status) { this.status = status; CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 18-21

19 public double getlatitude() { return latitude; public void setlatitude(double latitude) { this.latitude = latitude; public double getlongitude() { return longitude; public void setlongitude(double longitude) { this.longitude = longitude; public long getnio() { return nio; public void setnio(long nio) { this.nio = public String tostring() { StringBuilder builder = new StringBuilder(); builder.append("protocolo [rede="); builder.append(rede); builder.append(", sequencia="); builder.append(sequencia); builder.append(", comando="); builder.append(comando); builder.append(", subcomando="); builder.append(subcomando); builder.append(", id="); builder.append(id); builder.append(", leitura="); builder.append(leitura); builder.append(", status="); builder.append(status); CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 19-21

20 builder.append(", latitude="); builder.append(latitude); builder.append(", longitude="); builder.append(longitude); builder.append(", nio="); builder.append(nio); builder.append("]"); return builder.tostring(); CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 20-21

21 2.4 - log4j.properties # Root logger option log4j.rootlogger=info, stdout, file # Redirect log messages to console log4j.appender.stdout=org.apache.log4j.consoleappender log4j.appender.stdout.target=system.out log4j.appender.stdout.layout=org.apache.log4j.patternlayout log4j.appender.stdout.layout.conversionpattern=%d{dd/mm/yyyy HH:mm:ss,SSS %-5p %c{1:%l - %m%n # Redirect log messages to a log file, support file rolling. log4j.appender.file=org.apache.log4j.rollingfileappender log4j.appender.file.file=c:/logs/telemedicao.log log4j.appender.file.immediateflush=true log4j.appender.file.maxfilesize=10mb log4j.appender.file.maxbackupindex=10 log4j.appender.file.layout=org.apache.log4j.patternlayout log4j.appender.file.layout.conversionpattern=%d{dd/mm/yyyy HH:mm:ss,SSS %-5p %c{1:%l - %m%n Teste Para utilizar a aplicação telemedicao.jar, via prompt, terminal ou similar, executar o comando: java -jar telemedicao.jar A aplicação irá reservar a porta para ela. Caso a porta esteja ocupada, ela não funcionará. Para simular o envio dos pacotes de protocolo, pode ser utilizado o aplicativo TCP Test Tool. CÓPIA NÃO CONTROLADA Verificar versão atualizada na Internet 21-21

Tipos, Literais, Operadores

Tipos, 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 mais

Tratamento de Exceções

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

Leia mais

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

Instituto Superior de Engenharia de Lisboa

Instituto Superior de Engenharia de Lisboa Instituto Superior de Engenharia de Lisboa Introdução à Programação (PG) Docente: Pedro Viçoso Fazenda (pfazenda@cedet.isel.ipl.pt) Professor Responsável: Pedro Alexandre Pereira (palex@cc.isel.ipl.pt)

Leia mais

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

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

Leia mais

Representação de Dados

Representação de Dados Representação de Dados Representação binária Exemplo: 15213 10 11101101101101 2 Vantagens: Implementação eletrônica Possibilidade de armazenar elementos com dois estados Transmissão eletrônica confiável

Leia mais

Resumo das Propriedades de UDP e de TCP

Resumo das Propriedades de UDP e de TCP Relembrando... Processos duma aplicação distribuída comunicam via mensagens. O formato e o significado destas mensagens depende do protocolo usado. As mensagens são transportadas entre processos através

Leia mais

Programação Orientada a Objetos SANTOS, Rafael (PLT)

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 mais

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

MsC. João Maria MsC. Liviane Melo

MsC. 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 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

Java : Comunicação Cliente-Servidor.

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

Leia mais

Laboratório de Programação. Aula 12 Java 5COP088. Aula 12 Exceções Prof. Dr. Sylvio Barbon Junior. Sylvio Barbon Jr

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

Conexão Socket na MIDP

Conexão Socket na MIDP Conexão Socket na MIDP A comunicação entre diferentes sistemas é comum na programação, e esta regra não desaparece na construção de aplicativos para pequenos dispositivos e, consequentemente, com o Java

Leia mais

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica.

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica. Computação L2 Linguagem C++ ovsj@cin.ufpe.br Observação: Material Baseado na Disciplina Computação Eletrônica. Alfabeto São os símbolos ( caracteres ) permitidos na linguagem: Letras (maiúsculas e minúsculas);

Leia mais

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

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

Leia mais

Volnys Bernal 1. Trabalho Chat UDP. PSI 2653 Meios Eletrônicos Interativos I

Volnys Bernal 1. Trabalho Chat UDP. PSI 2653 Meios Eletrônicos Interativos I 2007-2017 Volnys Bernal 1 Trabalho PSI 2653 Meios Eletrônicos Interativos I 2007-2017 Volnys Bernal 2 Objetivo: Desenvolvimento de um programa chat UDP (cliente e servidor) Grupo Cada grupo deve escolher

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

Tratamento de Exceções, Multithreads e arquivos (em Java) Programação Orientada a Objetos

Tratamento de Exceções, Multithreads e arquivos (em Java) Programação Orientada a Objetos Tratamento de Exceções, Multithreads e arquivos (em Java) Programação Orientada a Objetos Nesta unidade vamos ver os últimos assuntos de interesse em java. O primeiro deles, bem simples, é o tratamento

Leia mais

Threads. O que é uma Thread? Paralelismo

Threads. O que é uma Thread? Paralelismo Threads em Java 1 O que é uma Thread? Paralelismo Threads Multi- threading é o mecanismo de concorrência suportado explicitamente pela linguagem Java. Os mecanismos de gerenciamento e sincronização de

Leia mais

JAVA. Professor: Bruno Toledo

JAVA. Professor: Bruno Toledo JAVA Professor: Bruno Toledo Funcionamento de uma LP Em uma Linguagem de Programação (LP) como C e Pascal, temos o seguinte quadro quando vamos compilar um programa. Código fonte em c Teste.c Gera código

Leia mais

Programação Orientada por Objectos com Java. Ademar Aguiar. www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt. MRSC, Programação em Comunicações

Programação Orientada por Objectos com Java. Ademar Aguiar. www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt. MRSC, Programação em Comunicações Programação Orientada por Objectos com Java www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt 1 Java Networking java.net.* 141 Package java.net Java dispõe de diversas classes para manipular e processar informação

Leia mais

Orientação a Objetos e Java

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

Prof. Rogério Rocha 1

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

Entrada e Saída de dados por JOptionPane

Entrada e Saída de dados por JOptionPane Entrada e Saída de dados por JOptionPane As caixas de diálogo têm uma função importante na interação do programa com o usuário. É através delas que dados são solicitados pelo programa e é através delas

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 14 Prof. ISVega Maio de 2004 Mecanismo de Exceções em Java CONTEÚDO 14.1Erros,

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

Multithreading. Programação Orientada por Objectos com Java. Ademar Aguiar. MRSC - Programação em Comunicações

Multithreading. Programação Orientada por Objectos com Java. Ademar Aguiar. MRSC - Programação em Comunicações Programação Orientada por Objectos com Java www.fe.up.pt/~aaguiar ademar.aguiar@fe.up.pt 1 Multithreading 154 Objectivos Ser capaz de: Explicar os conceitos básicos de multithreading Criar threads múltiplos

Leia mais

Exceçõ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. 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 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

Introdução à Linguagem Java

Introdução à Linguagem Java Capítulo 3 A Construção de Aplicativos Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra Palavras reservadas Introdução à Linguagem Java abstract default goto null synchronized

Leia mais

Sockets em Java. Leonardo R. Nunes - leonardo@sumersoft.com. 1. Introdução. 2. Sockets TCP/IP

Sockets em Java. Leonardo R. Nunes - leonardo@sumersoft.com. 1. Introdução. 2. Sockets TCP/IP Sockets em Java Leonardo R. Nunes - leonardo@sumersoft.com 1. Introdução A comunicação entre processos de software tornou-se indispensável nos sistemas atuais. O mecanismo mais utilizado atualmente para

Leia mais

Caso 1 NetScanner Main

Caso 1 NetScanner Main Caso 1 NetScanner import java.util.scanner; import java.net.unknownhostexception; import java.util.logging.level; import java.util.logging.logger; import javax.swing.joptionpane; public class Main { System.out.println("Digite

Leia mais

Orientação a Objetos e a Linguagem Java

Orientação a Objetos e a Linguagem Java Orientação a Objetos e a Linguagem Java Afrânio Assis afranio@gmail.com Novembro/2006 1 Tipos, Literais, Operadores e Controle de Fluxo Novembro/2006 2 Identificadores Identificadores são palavras utilizadas

Leia mais

Arquivos continuação. Profa. Thienne Johnson EACH/USP

Arquivos continuação. Profa. Thienne Johnson EACH/USP Arquivos continuação Profa. Thienne Johnson EACH/USP Java, como programar, 6ª edição Deitel & Deitel Capítulo 14 Serialização de objetos Lê e escreve objetos inteiros em arquivo; Arquivo em formato binário.

Leia mais

Revisões de PG. Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Revisões de PG. Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Revisões de PG (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Pedro Alexandre Pereira (palex@cc.isel.ipl.pt) Compilar e executar programas em Java Ficheiro fonte (Prog.java) Ficheiro

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

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 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

PROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S

PROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S PROGRAMAÇÃO I VA R I Á V E I S, C O N S TA N T E S, O P E R A D O R E S E N T R A DA E S A Í DA D E DA D O S Variáveis 2 Variáveis são locais onde são armazenados os valores na memória. Toda variável é

Leia mais

Network Programming. Conceitos Básicos A classe InetAddress Programação de Socket TCP Programação de Socket UDP

Network Programming. Conceitos Básicos A classe InetAddress Programação de Socket TCP Programação de Socket UDP Network Programming Conceitos Básicos A classe InetAddress Programação de Socket TCP Programação de Socket UDP Conceitos Básicos Internet e seus serviços TCP/IP IP UPD vs TCP InetAddress Classe usada para

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ ESCOLA POLITÉCNICA CURSO DE ENGENHARIA DE COMPUTAÇÃO CHRISTIAN ARROSI CHRISTIAN KITZMANN GOMES

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ ESCOLA POLITÉCNICA CURSO DE ENGENHARIA DE COMPUTAÇÃO CHRISTIAN ARROSI CHRISTIAN KITZMANN GOMES PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ ESCOLA POLITÉCNICA CURSO DE ENGENHARIA DE COMPUTAÇÃO CHRISTIAN ARROSI CHRISTIAN KITZMANN GOMES TITAN HIGHWAYS CURITIBA 2012 CHRISTIAN ARROSI CHRISTIAN KITZMANN

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

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

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

Leia mais

MANUAL DE INSTALAÇÃO E PROGRAMAÇÃO CONVERSOR - IP / USB / SERIAL RV1

MANUAL DE INSTALAÇÃO E PROGRAMAÇÃO CONVERSOR - IP / USB / SERIAL RV1 MANUAL DE INSTALAÇÃO E PROGRAMAÇÃO CONVERSOR - IP / USB / SERIAL - 317 RV1 SÃO CAETANO DO SUL 06/06/2014 SUMÁRIO DESCRIÇÃO DO PRODUTO... 3 CARACTERÍSTICAS... 3 CONFIGURAÇÃO USB... 4 CONFIGURAÇÃO... 5 PÁGINA

Leia mais

Linguagem Java Parte I. Sintaxe. Algumas características

Linguagem Java Parte I. Sintaxe. Algumas características Programação Na Web Linguagem Java Parte I Sintaxe António Gonçalves Algumas características Estruturas de controlo, operadores, expressões e tipos básicos são semelhantes ao C++/C. Não há apontadores;

Leia mais

Outline. 33. Manipulação de arquivos DIM

Outline. 33. Manipulação de arquivos DIM Outline 33. Manipulação de arquivos DIM031 015.1 Leitura e escrita 3 s DIM031 33. Manipulação de arquivos 015.1 1 / 4 DIM031 33. Manipulação de arquivos 015.1 / 4 Arquivo = entidade de armazenamento de

Leia mais

Sintaxe Básica de Java Parte 2

Sintaxe Básica de Java Parte 2 Sintaxe Básica de Java Parte 2 Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Instruções Condicionais A instruçã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

Linguagens de Programação Classificação

Linguagens de Programação Classificação Classificação Classificação A proximidade que a linguagem de programação tem com a humana determina sua classe (o nível): Linguagem de máquina (primeira geração) Linguagem assembly - de montagem (segunda

Leia mais

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores

Leia mais

DIRETORIA ACADÊMICA DE GESTÃO E TECNOLOGIA DA INFORMAÇÃO DIATINF TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TADS

DIRETORIA ACADÊMICA DE GESTÃO E TECNOLOGIA DA INFORMAÇÃO DIATINF TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TADS DIRETORIA ACADÊMICA DE GESTÃO E TECNOLOGIA DA INFORMAÇÃO DIATINF TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TADS LISTA DE EXERCÍCIOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS 1. Crie um modelo (classe)

Leia mais

Aula teórica 4. Tema 3. Linguagem de Programação Java. Manipulação de informação simples (cont.)

Aula teórica 4. Tema 3. Linguagem de Programação Java. Manipulação de informação simples (cont.) Aula teórica 4 Tema 3. Linguagem de Programação Java. Manipulação de informação simples (cont.) Tipos de dados básicos: Representação de números inteiros Representação de números decimais Instrução de

Leia mais

Testes Unitários com JUnit

Testes Unitários com JUnit Testes Unitários com JUnit Por: Luiz Gustavo Stábile de Souza http://luizgustavoss.wordpress.com Abril/2009 Motivação Apesar de já fazer um certo tempo que escrevi a primeira versão deste tutorial, o assunto

Leia mais

PHP: <?php echo("hello World");?> Printa Hello World na página do navegador, mais fácil do que no Java.

PHP: <?php echo(hello World);?> Printa Hello World na página do navegador, mais fácil do que no Java. Nome: Vinícius Meng 3º ano Escrever em tela: public class HelloWorld { public static void main (String[] args) { System.out. println ("Hello World"); Printa Hello World na tela do terminal. echo("hello

Leia mais

Métodos e Procedimentos. Prof. Jesus José de Oliveira Neto

Métodos e Procedimentos. Prof. Jesus José de Oliveira Neto Métodos e Procedimentos Prof. Jesus José de Oliveira Neto Procedimentos são estruturas que agrupam um conjunto de comandos, que são executados quando o procedimento é chamado. Métodos são procedimentos

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

Hello World. Linguagem C. Tipos de Dados. Palavras Reservadas. Operadores Aritméticos. Pré e pós incremento e pré e pós decremento

Hello World. Linguagem C. Tipos de Dados. Palavras Reservadas. Operadores Aritméticos. Pré e pós incremento e pré e pós decremento Hello World Linguagem C printf("hello world!\n"); main é a função principal, a execução do programa começa por ela printf é uma função usada para enviar dados para o vídeo Palavras Reservadas auto double

Leia mais

Armazendando Senhas Com Funções de Hash

Armazendando Senhas Com Funções de Hash Armazendando Senhas Com Funções de Hash Paulo Ricardo Lisboa de Almeida 1 Função de Hash Mapear uma entrada (string) de tamanho arbitrário para uma saída de tamanho fixo Saída de 128, 256, 512... bits

Leia mais

Tratamento de Exceções em Java

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

Nota de Aplicação. Comunicação M340 em ethernet lendo registros de entrada (input register) função modbus 4 de um PLC Quantum. Suporte Técnico Brasil

Nota de Aplicação. Comunicação M340 em ethernet lendo registros de entrada (input register) função modbus 4 de um PLC Quantum. Suporte Técnico Brasil Nota de Aplicação Comunicação M340 em ethernet lendo registros de entrada (input register) função modbus 4 de um PLC Quantum. Versão: 1 Suporte Técnico Brasil Especificações técnicas Hardware: Firmware:

Leia mais

Dados armazenados em um objeto podem ser tanto primitivos, tais como inteiros ou caracteres, ou referências para outros objetos.

Dados armazenados em um objeto podem ser tanto primitivos, tais como inteiros ou caracteres, ou referências para outros objetos. 2. Classes e Objetos Uma classe é um modelo que define os atributos e métodos comuns a um conjunto de objetos de forma encapsulada. Atributos são informações ou dados que descrevem, categorizam ou quantificam

Leia mais

Disciplina de Algoritmos e Programação

Disciplina de Algoritmos e Programação Disciplina de Algoritmos e Programação Aula Passada Prática com declaração e inicialização de variáveis Capacidade de representação (estouro de representação) Tamanho ocupado pela variável na memória (comando

Leia mais

Linguagens de Programação I

Linguagens de Programação I Linguagens de Programação I Tema # 4 Operadores em C Susana M Iglesias FUNÇÕES ENTRADA-SAÍDA I/O printf(), utilizada para enviar dados ao dispositivo de saída padrão (stdout), scanf(), utilizada para ler

Leia mais

Redes Industriais. Carlos Roberto da Silva Filho, M. Eng.

Redes Industriais. Carlos Roberto da Silva Filho, M. Eng. Redes Industriais Carlos Roberto da Silva Filho, M. Eng. Criado na década de 1970 pela Modicon. É um dos mais antigos protocolos utilizados em redes de CLPs para aquisição de sinais de instrumentos e comandar

Leia mais

Linguagem C Ficheiros Compilação Separada

Linguagem C Ficheiros Compilação Separada Linguagem C Ficheiros Compilação Separada typedef definição de tipos Apontadores para estruturas Ficheiros na bibiloteca standard do C Compilação Separada Definição de novos tipos em C É possível definir

Leia mais

Ficha 3. Exercícios de preparação da actividade 3

Ficha 3. Exercícios de preparação da actividade 3 Ficha 3 Exercícios de preparação da actividade 3 Sítio: Elearning UAb Unidade curricular: FATAC - Sensores e Actuadores (DMAD 2013-14) Livro: Ficha 3 Impresso por: José Coelho Data: Quarta, 4 Junho 2014,

Leia mais

Atributos e Métodos Estáticos

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

Representação de Dados (inteiros não negativos)

Representação de Dados (inteiros não negativos) Representação de Dados (inteiros não negativos) 1 Memória Armazena instruções e dados durante a execução de um programa A memória principal pode ser vista como um array de bytes, cada um com seu endereço

Leia mais

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

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

Leia mais

PROGRAMAÇÃO JAVA. Parte 3

PROGRAMAÇÃ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 mais

Tratamento de Erros. Sérgio Luiz Ruivace Cerqueira

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

Leia mais

Redes de Computadores. Protocolos TCP/IP

Redes de Computadores. Protocolos TCP/IP Redes de Computadores Protocolos TCP/IP Sumário 2! Endereços IP (lógicos) Sub-redes! Endereços Ethernet (físicos)! Conversão de endereços IP/Ethernet! Pacotes IP! Números de portos! Segmentos UDP! Segmentos

Leia mais

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

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

Leia mais

FTP FILE F TRANSFER PROTOCOL. Tópicos

FTP FILE F TRANSFER PROTOCOL. Tópicos FTP FILE F TRANSFER PROTOCOL Tópicos Revisão da aplicação FTP Implementação simples em Java de uma conexão FTP Implementação simples em Java de um comando de transferência de arquivo Descrição dos exercícios

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

Agenda. Instalação e configuração. Processamento de comandos SQL com JDBC. Driver JDBC Criação da classe de conexão

Agenda. Instalação e configuração. Processamento de comandos SQL com JDBC. Driver JDBC Criação da classe de conexão Agenda Instalação e configuração Driver JDBC Criação da classe de conexão Processamento de comandos SQL com JDBC Gerenciamento de conexões Execução simples de consultas Tratamento de exceções Instalação

Leia mais

Ambientação com a Sintaxe de Java: parte 1

Ambientação com a Sintaxe de Java: parte 1 Ambientação com a Sintaxe de Java: parte 1 Prof. Gustavo Wagner FATEC-PB Programas em Java Texto do programa: arquivo com extensão.java Arquivo contém ao menos uma classe Nome do arquivo deve ser IGUAL

Leia mais

Módulo Lógica Programação com aplicações em Java. Projeto khouse Profissionalizante Profª Larissa Brandão

Módulo Lógica Programação com aplicações em Java. Projeto khouse Profissionalizante Profª Larissa Brandão Educação Módulo Lógica e Ética de Programação com aplicações em Java Projeto khouse Profissionalizante Profª Larissa Brandão Educação e Ética Fundamentos da Programação Objetivos: Reconhecer as diferenças

Leia mais

Redes de Computadores - 2010/1

Redes de Computadores - 2010/1 Redes de Computadores - 2010/1 Miniprojeto Universidade Federal do Espírito Santo - UFES Professor: Magnos Martinello 20 de maio de 2010 1 1 Proposta A proposta do trabalho é reforçar o compreendimento

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

Funcionamento da Aplicação. Simulações do funcionamento. Simulação SAC

Funcionamento da Aplicação. Simulações do funcionamento. Simulação SAC Funcionamento da Aplicação Simulações do funcionamento Simulação SAC Simulação PRICE Simulação Cartão de Crédito Simulação Deposito Simulação parcela mínima Simulação Parcelamento máximo Classe: ConnectionFactory;

Leia mais

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos Encapsulamento e Métodos (Construtores e Estáticos) Sobrecarga de Métodos João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro Conceitos sobre Encapsulamento; Variável this; Métodos Construtores;

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

Protocolo XREP Manual para Desenvolvedores

Protocolo XREP Manual para Desenvolvedores Ver.: 2 Atualizado em: 22/04/2010 Protocolo XREP - 520 Manual para Desenvolvedores 1 Protocolo de comunicação XREP 520...3 Estrutura das mensagens...3 Cálculo do CRC...3 Fluxos das Mensagens...5 Mensagens

Leia mais

Web Services. EclipseSDK/DB2 Construindo/Consumindo Serviços

Web Services. EclipseSDK/DB2 Construindo/Consumindo Serviços Web Services EclipseSDK/DB2 Construindo/Consumindo Serviços Mario C. Ponciano a.k.a: Razec http://razec.wordpress.com mrazec@gmail.com 28 de Novembro 2009 2 Sumário Objetivo... 3 Requisitos... 3 Desenvolvimento...

Leia mais

Comunicação via Sockets

Comunicação via Sockets Programação para a Plataforma Android Aula 9 Comunicação via Sockets O que são sockets? O que são data access objects? Como criar servidores de serviços distribuídos? Aplicações mulb threading simples

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for

Leia mais

Universidade Estadual de Santa Cruz

Universidade Estadual de Santa Cruz Universidade Estadual de Santa Cruz Departamento de Ciências Exatas e Tecnológicas DCET Bacharelado em Ciência da Computação Professor: Esbel Tomás Valero Orellana Linguagem de Programação III Introdução

Leia mais

Curso C: Ponteiros e Arrays

Curso 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 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

Padrões de Projeto e Persistência com DAO

Padrões de Projeto e Persistência com DAO Curso de Análise de Sistemas Análise de Sistemas II Padrões de Projeto e Persistência com DAO Prof. Giuliano Prado de Morais Giglio, M.Sc. Introdução a Padrões de Projeto Padrões de Projeto foram inicialmente

Leia mais

InputStream e OutputStream para ler/ escrever bytes e das classes abstractas Reader e Writer para ler /escrever caracteres (texto).

InputStream e OutputStream para ler/ escrever bytes e das classes abstractas Reader e Writer para ler /escrever caracteres (texto). Input e Output 8 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 físico

Leia mais

Tratamento de Exceção. Tratamento de Exceções. Vantagens de TE. Exemplos de Exceções. Exemplo: Divide1 (sem TE)

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

Programação Orientada a Objeto Java

Programação Orientada a Objeto Java Programação Orientada a Objeto Java Aula 2 Introdução a Programação Java Sintaxe da Linguagem e Principais Conceitos Profª Kelly Christine C. Silva Sumário Construção do programa Saída de dados Entrada

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

9 Exceções. Desenvolvimento OO com Java. Vítor E. Silva Souza ~ vitorsouza

9 Exceções. Desenvolvimento OO com Java. Vítor E. Silva Souza  ~ vitorsouza Desenvolvimento OO com Java 9 Exceções 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 Espírito

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