STREAMS (FLUXOS) EM JAVA uma Introdução
|
|
|
- Jonathan Quintanilha Palhares
- 10 Há anos
- Visualizações:
Transcrição
1 STREAMS (FLUXOS) EM JAVA uma Introdução Miguel Jonathan DCC-IM/UFRJ (rev. maio 2010) A palavra stream em inglês significa um "fluxo de água", como um riacho. A idéia que transmite é de algo fluindo continuamente, de uma fonte de origem para um local de destino. Em Java, streams são objetos que permitem obter dados de algum fluxo de entrada ou enviar dados para algum fluxo de saída, usando um protocolo básico comum. Essas fontes e destinos podem ser arquivos de disco, áreas da memória (buffers) conexões de rede, assim como os tradicionais arquivos padrão de entrada (teclado) e saída (monitor de vídeo e impressora). A linguagem Java trabalha com um conjunto de mais de 50 classes de stream diferentes. Mas todas derivam (estendem) as classes abstratas básicas abaixo descritas. Essa estrutura de classes torna a linguagem muito flexível, mas ao mesmo tempo requer um estudo aprofundado, para tirar proveito dessa variedade. Neste texto introdutório, veremos apenas as classes básicas mais usadas. Todas pertencem ao pacote java.io. As classes abstratas básicas para leitura e escrita de bytes são: InputStream e OutputStream. Elas são úteis para ler fluxos de dados binários, imagens, etc. Os seus métodos não permitem trabalhar com conceito de linhas, nem reconhecem caracteres especiais. As classes abstratas básicas para leitura e escrita de caracteres Unicode são Reader e Writer. Elas são úteis para trabalhar com texto, e convertem automaticamente caracteres de fim de linha entre sistemas operacionais diferentes. Essas classes não são instanciáveis, mas fornecem o protocolo comum para todas as demais subclasses concretas, que são usadas para diversos meios de entrada e saída, e diversas formas de leitura e escrita de dados. ATENÇÃO: praticamente todos os métodos das classes de stream lançam exceções verificáveis, do tipo IOException ou sub-classe desta. Para usar esses métodos é obrigatório usar blocos try-catch ou o método declarar explicitamente que pode lançar exceção, usando a cláusula throws no cabeçalho. InputStream (métodos de instância) Possui um método abstrato read() que é implementado nas subclasses, para ler 1 byte da entrada. Os demais métodos são concretos, e os mais usados são apresentados abaixo. Procure verificar na API. public int available() throws IOException Retorna o número de bytes que podem ser lidos (ou pulados) desse InputStream sem bloqueio pela próxima chamada de um método para esse input stream. public void close() throws IOException Fecha o receptor da mensagem (ele não poderá mais ser usado para leitura) e libera os recursos do sistema operacional associados a ele. public void mark(int readlimit) Marca a posição corrente deste InputStream. public boolean marksupported() Testa se o receptor suporta os métodos mark e reset. public int read() throws IOException Retorna o próximo byte da entrada, ou 1 se o fim do fluxo de entrada foi alcançado. Note que para obter o retorno como byte é preciso usar um cast pois o tipo de retorno é int. Esse método é abstrato, e precisa ser implementado nas classes concretas. public int read(byte[] b) throws IOException Lê do fluxo de entrada no máximo um número de bytes igual ao tamanho do buffer b (b.length). Retorna o número de bytes lidos ou 1 se não houver bytes disponíveis. Os bytes são lidos para b[0], b[1], etc. public int read(byte[] b, int inicio,int max) throws IOException Lê do fluxo receptor no máximo max bytes para o vetor de bytes b, iniciando na posição inicio. Ou seja, se
2 houverem 0 < k <= max bytes disponíveis para leitura, eles serão lidos para as posições b[inicio], b[inicio+1],..., b[inicio+k-1]. O método retorna o número de bytes lidos, ou 1 caso não haja nenhum byte disponível para leitura (fim-de-arquivo). Esse método pode lançar uma exceção da classe IndexOutOfBoundsException se as expressões de índices ultrapassarem os limites do vetor. public void reset()throws IOException Reposiciona a stream para a posição no momento em que o método mark foi chamado pela última vez nesta input stream. public long skip(long n) throws IOException Ignora os n primeiros bytes de dados desta stream de entrada. Para maior eficiência, usa-se o método available() para saber quantos bytes estão disponíveis para leitura, e então lê-se todos para um buffer de tamanho suficiente com read (byte[]). Por exemplo, se input for uma (sub-classe) de InputStream: int bytesdisponiveis = input.available(); if (bytesdisponiveis > 0) { byte[] buf = new byte[bytesdisponiveis]; input.read(buf); Recomenda-se fechar o fluxo depois de usá-lo, para liberar os recursos alocados pelo sistema operacional. Para isso, enviar ao fluxo a mensagem close(): Ex: input.close(); OutputStream Essa é a classe abstrata raiz de todas as classes que fornecem o serviço de escrita de bytes em um fluxo de saída. public void close() throws IOException Fecha o fluxo de saída receptor da mensagem (ele não poderá mais ser usado nem reaberto) e libera os recursos do sistema operacional associados a ele. Se houver bytes ainda no buffer, eles serão descarregados na saída antes de fechar o fluxo. O método da classe OutputStream não faz nada. Ele é redefinido em cada uma das subclasses concretas. public void flush() throws IOException Descarrega os bytes que estejam no buffer do fluxo na saída associada. public void write(byte[] b) throws IOException Escreve todos os bytes do vetor b bytes no fluxo receptor da mensagem. Equivale a chamar o método write (b, 0, b.length). public void write(byte[] b, int inicio,int n) throws IOException Escreve n bytes do vetor de bytes b, iniciando na posição inicio, no fluxo receptor da mensagem. Ou seja, serão escritos os bytes b[inicio], b[inicio+1],..., b[inicio+n-1] Esse método pode lançar uma exceção IndexOutOfBoundsException se as expressões de índices ultrapassarem os limites do vetor. public void write(int b) throws IOException Escreve o byte menos significativo (posições 0 a 7) do argumento (que é um int) no fluxo receptor da mensagem. Os demais 24 bits do argumento são ignorados. Esse método é abstrato, e precisa ser implementado nas subclasses concretas. Recomenda-se fechar o fluxo de saída depois de usá-lo, para liberar os recursos alocados pelo sistema operacional e forçar a descarga de quaisquer bytes que tenham ficado retidos no buffer. Para isso, enviar ao fluxo a mensagem close(): Ex: output.close(); Os métodos acima podem lançar uma IOException se ocorrer algum erro na escrita dos dados, em particular se o fluxo de saída tiver sido fechado. Também podem lançar uma NullPointerException se a referência ao vetor b for nula.
3 Reader e Writer São as classes abstratas das quais descendem as diversas classes especializadas para ler e escrever fluxos de caracteres Unicode. Protocolo básico: Method Summary - Reader void close() Closes the stream and releases any system resources associated with it. void mark(int readaheadlimit) Marks the present position in the stream. boolean marksupported() Tells whether this stream supports the mark() operation. int int read() Reads a single character. int read(char[] cbuf) Reads characters into an array. read(char[] cbuf, int off, int len) Reads characters into a portion of an array. int read(charbuffer target) Attempts to read characters into the specified character buffer. boolean ready() Tells whether this stream is ready to be read. void reset() Resets the stream. long skip(long n) Skips characters. Method Summary - Writer Writer append(char c) Appends the specified character to this writer. Writer append(charsequence csq) Appends the specified character sequence to this writer. Writer append(charsequence csq, int start, int end) Appends a subsequence of the specified character sequence to this writer. void close() Closes the stream, flushing it first. void flush() Flushes the stream. void write(char[] cbuf) Writes an array of characters. void write(char[] cbuf, int off, int len) Writes a portion of an array of characters. void write(int c) Writes a single character. void write(string str) Writes a string. void write(string str, int off, int len) Writes a portion of a string. Subclasses para ler/gravar arquivos:
4 Para ler e gravar arquivos texto, usamos as classes FileReader e FileWriter. Essas classes lêem um caractere a cada vez, o que é ineficiente. Normalmente vamos querer ler/escrever linhas inteiras. Linhas são seqüências de caracteres terminadas por uma marca de fim de linha, que é em geral o caractere newline ('\n'). Para ler uma linha de cada vez, usa-se o método readline() da classe BufferedReader. Para criar um objeto dessa classe, passa-se para o seu construtor uma instância de alguma classe básica, como FileReader. O exemplo abaixo mostra como ler dados de um arquivo texto de nome "arquivo.txt" que está no mesmo diretório que o programa: FileReader reader = new FileReader("arquivo.txt"); BufferedReader br = new BufferedReader(reader); String linha; while ((linha=br.readline())!= null) { etc. A cada execução de br.readline() uma nova linha será retornada na forma de uma String. Quando não houver mais linhas, o método retorna null (e não uma String vazia, cuidado!). Gravando linhas em um arquivo texto Para gravar linhas em um arquivo texto, usamos um BufferedWriter, para evitar gravar caractere a caractere. Nesta classe, não há um correspondente método writeline(). Em vez disso, há o método write(string linha, int deslocamento, int numchars); Esse método grava no arquivo uma linha contendo os numchars caracteres da String linha, a partir da posição deslocamento. Portanto, para gravar uma linha com a String toda, devemos escrever: write (linha, 0, linha.length()); A gravação não inclui a marca de fim de linha. Para colocá-la pode-se usar o método newline(), ou colocar direto o caratere newline com write('\n'); IMPORTANTE: o método write() de BufferedWriter escreve para um buffer da memória, e só quando ele fica cheio é que os caracteres são transmitidos para o arquivo. É preciso forçar a gravação com flush(), caso contrário nada será realmente gravado. O método close() fecha o fluxo. Deveria forçar um flush, mas não o faz. No exemplo a seguir, todas as strings de um vetor de Strings serão gravadas, linha a linha, em um arquivo. String[] v = {"aaa", "bbbb", "ccccc"; BufferedWriter bw = new BufferedWriter (new FileWriter("arquivo.txt")); for (int i=0; i< v.length(); i++){ bw.write(v[i], 0, v[i].length()); bw.newline();// grava uma marca de fim de linha bw.flush(); //descarrega o conteudo do buffer da memoria no arquivo bw.close(); Um programa exemplo completo O programa abaixo, na primeira parte, lê um arquivo texto qualquer do disco, e imprime na console um máximo de 10 linhas (ou menos se não houver tantas linhas).
5 Na segunda parte, um vetor de ints com valores aleatórios entre 0 e 999 é construído. O conteúdo desse vetor é gravado em um arquivo (binário, não texto) no disco. Depois o arquivo é lido de novo para um outro vetor de ints na memória: import java.io.*; import java.util.random; public class TestaStreams{ public static void main (String[] args) throws IOException{ //Lendo e imprimindo no maximo 10 linhas de um arquivo-texto para a console: FileReader reader = new FileReader("c:\\testeStream.txt"); BufferedReader br = new BufferedReader(reader); String linha; int linhaslidas=0; while ((linha=br.readline())!= null && linhaslidas<=10){ System.out.println(linha); linhaslidas++; //Gravando um vetor de ints e lendo mais tarde: int[] v = new int[100]; int i; // Cada posicao do vetor recebe um int aleatorio entre 0 e 999 Random gen = new Random(); for(i=0; i<100; i++) v[i] = gen.nextint(1000); FileOutputStream fos = new FileOutputStream("vetInteiros.dat"); DataOutputStream dos = new DataOutputStream(new BufferedOutputStream(fos)); for (int n:v) dos.writeint(n); //obs: usando foreach com vetor dos.flush(); //necessario se usar BufferedOutputStream // Criando uma stream de leitura para dados, nao bufferizada nesse caso: DataInputStream dis =new DataInputStream(new FileInputStream("vetInteiros.dat")); // Criando uma area na memoria para receber os ints do arquivo. // O tamanho do vetor vai acomodar exatamente o no. de ints disponiveis no arquivo: int bytesdisponiveis = dis.available(); System.out.println("No. de bytes disponiveis para leitura = "+ bytesdisponiveis); int[] v2 = new int[bytesdisponiveis/4]; // lendo os inteiros um a um, do arquivo para a memoria (vetor v2): for(i=0; i<v2.length; i++) v2[i] = dis.readint(); //obs: usando aqui for classico //imprimindo na tela o conteudo de v2, 20 numeros por linha: for(i=0; i<v2.length; i++){ System.out.print ("" + v2[i] + " "); if((i+1)%20==0) System.out.println();
Programação II Java Streams. Christopher Burrows
Programação II Java Streams Christopher Burrows Java Streams - Introdução As aplicações informáticas consistem em trocas de dados entre duas ou mais fontes/destinos. As Streams servem para representar
Ler e escrever bytes, caracteres e Strings de/para a entrada e saída padrão. Ler e escrever bytes, caracteres e Strings de/para arquivos
O pacote java.io Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/ 1 Objetivos Ler e escrever
Programação Orientada a Objetos com Java. Prof. Júlio Machado [email protected]
Programação Orientada a Objetos com Java Prof. Júlio Machado [email protected] TRATAMENTO DE EXCEÇÕES Tratamento de Exceções O tratamento de exceções de Java envolve vários conceitos importantes:
Arquivos. Profa. Thienne Johnson EACH/USP
Arquivos Profa. Thienne Johnson EACH/USP Java, como programar, 6ª edição Deitel & Deitel Capítulo 14 Programadores utilizam arquivos para armazenar dados a longo prazo Dados armazenados em arquivos são
Bacharelado em Ciência e Tecnologia BC-0505 - Processamento da Informação Teoria Arquivos Prof. Edson Pinheiro Pimentel [email protected].
Bacharelado em Ciência e Tecnologia BC-0505 - Processamento da Informação Teoria Arquivos Prof. Edson Pinheiro Pimentel [email protected] Conceitos Arquivos permitem armazenar dados de maneira
P R O G R A M A. Stream Stream. Stream. Figura 1. Streams representam fluxos unidirecionais de dados, seja em entrada ou saída.
Universidade do Vale do Rio dos Sinos Laboratório 2 Prof. Gerson Cavalheiro Material de Apoio Aula 3 Manipulação de s Em Java, assim como em C e C++, a entrada/saida (input/output) é realizada através
Capítulo 6. Java IO - Ficheiros
Capítulo 6. Java IO - Ficheiros 1/26 Índice Indice 6.1 - Entrada e saída de dados 6.2 - Ficheiros de texto 6.3 - Ficheiros com formato proprietário 6.4 - A classe File 2/26 Índice 6.1 Entrada e saída de
Manual do Desenvolvedor Criptografia de Arquivos do WebTA
Manual do Desenvolvedor Criptografia de Arquivos do WebTA Versão 1.4 Índice 1. Objetivo..3 2. Processo..3 3. API de Criptografia - Biblioteca Java..4 3.1 WEBTACryptoUtil..4 3.1.1 decodekeyfile..4 3.1.2
Ficheiros. Ficheiros - Motivação. Streams. Entrada Binária. Não. Ficheiro
Ficheiros - Motivação Ficheiros Exemplo Suponha que desenvolve um programa para a calcular a média aritmética da primeira prova de frequência de uma turma e passado algum tempo realiza uma segunda prova
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 15 Prof. ISVega Maio de 2004 Arquivos de Texto CONTEÚDO 15.1Processamento
Roteiro. Introdução a Arquivos. Streams Serialização Arquivos de Acesso Randômico Exercícios. Armazenamento. Dados em vetores, listas e variáveis
Arquivos e Porto Alegre, novembro de 2006 Adaptado das aulas dos Profs: Isabel Manssour, Luciana Nedel, Bernardo Copstein e Júlio Machado Roteiro Serialização Arquivos de Acesso Randômico Exercícios Armazenamento
Curso Superior de Tecnologia emtelemática Programação Orientada a Objetos Streams em Java. Copyright 2010 Prof. César Rocha
Curso Superior de Tecnologia emtelemática Programação Orientada a Objetos Streams em Java Copyright 2010 Prof. César Rocha 1 Objetivos Explorar os conceitos fundamentais acerca do uso de streams de arquivos
Programação para Android. Aula 07: Persistência de dados Shared Preferences, Internal e External Storage
Programação para Android Aula 07: Persistência de dados Shared Preferences, Internal e External Storage Persistência de dados Na maioria das aplicações precisamos ter algum tipo de persistência de dados.
Módulo VIII Linguagem Java Entrada e Saída de Dados Arquivos
Especialização Avançada em Sistemas Distribuídos - EASD Módulo VIII Linguagem Java Entrada e Saída de Dados Arquivos Marcela Santana e Sérgio Gorender Universidade Federal da Bahia Arquivos Outro dispositivo
INF1013 MODELAGEM DE SOFTWARE
INF1013 MODELAGEM DE SOFTWARE Departamento de Informática Ivan Mathias Filho [email protected] Programa Capítulo 18 Sockets OLadoServidor O Lado Cliente Múltiplos Clientes 1 Programa Capítulo 18 Sockets
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
Aula 30 - Sockets em Java
Aula 30 - Sockets em Java Sockets Sockets são estruturas que permitem que funções de software se interconectem. O conceito é o mesmo de um soquete (elétrico, telefônico, etc...), que serve para interconectar
Persistência de Dados
Persistência de s Universidade do Estado de Santa Catarina - Udesc Centro de Ciências Tecnológicas - CCT Departamento de Ciência da Computação Tecnologia de Sistemas de Informação Estrutura de s II - DAD
PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. [email protected]
PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES Prof. Angelo Augusto Frozza, M.Sc. [email protected] ROTEIRO 5. Tratamento de Exceções Introdução e conceitos Capturando exceção usando
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[]
Desenvolvimento Orientado a Objetos com Java
Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. Desenvolvimento Orientado a Objetos com Java Capítulo 10 Arquivos e Streams
JSP - ORIENTADO A OBJETOS
JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...
Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java
Linguagem Java Objetivos Compreender como desenvolver algoritmos básicos em JAVA Aprender como escrever programas na Linguagem JAVA baseando-se na Linguagem Portugol aprender as sintaxes equivalentes entre
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
Java 2 Standard Edition Fundamentos de
Java 2 Standard Edition Fundamentos de Helder da Rocha www.argonavis.com.br 1 Sobre este módulo Este módulo pretende apenas cobrir conceitos essenciais sobre programação em rede com Java Como criar um
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
Capítulo II Modelos de Programação Distribuída
Capítulo II Modelos de Programação Distribuída From: Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, Addison-Wesley 2005 From: M. Ben-Ari Principles of Concurrent
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
Programação Paralela e Distribuída. Prof. Cidcley T. de Souza
Programação Paralela e Distribuída Prof. Cidcley T. de Souza Conteúdo Parte I Introdução aos Sockets Tipos de Sockets Classes Java: InetAddress, Datagram Sockets, Stream Sockets, Output e Input Classes
Arquivos. Estruturas de Dados II Vanessa Braganholo
Arquivos Estruturas de Dados II Vanessa Braganholo Entidades } Aplicações precisam armazenar dados sobre as mais diversas entidades, que podem ser concretas ou abstratas } Funcionário de uma empresa (concreto)
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;
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
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
SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com
- Aula 2-1. PRINCÍPIOS DE SOFTWARE DE ENTRADA E SAÍDA (E/S) As metas gerais do software de entrada e saída é organizar o software como uma série de camadas, com as mais baixas preocupadas em esconder as
Java 2 Standard Edition. Entrada. Helder da Rocha www.argonavis.com.br
Java 2 Standard Edition Entrada e Saída Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora os componentes mais importantes do pacote java.io e outros recursos da linguagem relacionados
Programação de Computadores II TCC 00.174/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: Entrada e saída de dados Material elaborado pelos profs. Anselmo Montenegro
20 Caracteres - Tipo char
0 Caracteres - Tipo char Ronaldo F. Hashimoto e Carlos H. Morimoto Até agora vimos como o computador pode ser utilizado para processar informação que pode ser quantificada de forma numérica. No entanto,
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
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
Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior
Armazenamento de Dados Prof. Antonio Almeida de Barros Junior 1 Armazenamento de Dados Todos os dados que utilizamos até o momento, ficavam armazenados apenas na memória. Ao final da execução dos programas,
Implementando uma Classe e Criando Objetos a partir dela
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe
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
FBV - Linguagem de Programação II. Um pouco sobre Java
FBV - Linguagem de Programação II Um pouco sobre Java História 1992: um grupo de engenheiros da Sun Microsystems desenvolve uma linguagem para pequenos dispositivos, batizada de Oak Desenvolvida com base
Estruturas de Dados. Profa. Juliana Pinheiro Campos
Estruturas de Dados Profa. Juliana Pinheiro Campos Arquivos ESTRUTURAS DE DADOS Técnicas para que possamos salvar e recuperar informações em arquivos de maneira estruturada. Assim será possível implementar
Cliente-servidor com Sockets TCP
Cliente-servidor com Sockets TCP Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho 2007/2008 c 2000 2007 Paulo Sérgio Almeida Cliente-servidor com Sockets
Comunicação entre processos
Comunicação entre processos Processo: um programa em execução num sistema terminal (host) Processos em sistemas distintos comunicam trocando mensagens Processo Cliente: processo que inicia a comunicação
INF 1005 Programação I
INF 1005 Programação I Aula 12 Cadeia de Caracteres (Strings) Edirlei Soares de Lima Caracteres Até o momento nós somente utilizamos variáveis que armazenam números (int, float ou
Recursos. Um recurso é ou um dispositivo físico (dedicado) do hardware, ou Solicitar o recurso: esperar pelo recurso, até obtê-lo.
Um recurso é ou um dispositivo físico (dedicado) do hardware, ou um conjunto de informações, que deve ser exclusivamente usado. A impressora é um recurso, pois é um dispositivo dedicado, devido ao fato
Aula 2 Modelo Simplificado de Computador
Aula 2 Modelo Simplificado de Computador Um computador pode ser esquematizado de maneira bastante simplificada da seguinte forma: Modelo Simplificado de Computador: Memória Dispositivo de Entrada Processador
Trabalho 3: Agenda de Tarefas
INF 1620 Estruturas de Dados Semestre 08.2 Trabalho 3: Agenda de Tarefas O objetivo deste trabalho é a implementação de um conjunto de funções para a manipulação de uma agenda de tarefas diárias, de forma
Prova de Java. 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos)
Prova de Java 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos) O programa consiste em uma aplicação que simula o comportamento de dois
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 [email protected] Fonte: Material da Profª Karina Oliveira Estrutura de Programa Um programa
ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto
Criar a classe Aula.java com o seguinte código: Compilar e Executar
Introdução à Java Prof. Bruno Gomes [email protected] 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
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
Organização de programas em Python. Vanessa Braganholo [email protected]
Organização de programas em Python Vanessa Braganholo [email protected] Vamos programar em Python! Mas... } Como um programa é organizado? } Quais são os tipos de dados disponíveis? } Como variáveis podem
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
PROGRAMAÇÃO ESTRUTURADA. CC 2º Período
PROGRAMAÇÃO ESTRUTURADA CC 2º Período PROGRAMAÇÃO ESTRUTURADA Aula 06: Ponteiros Declarando e utilizando ponteiros Ponteiros e vetores Inicializando ponteiros Ponteiros para Ponteiros Cuidados a serem
Curso de Programação Computadores
3 O Primeiro Programa em C Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 3 O Primeiro Programa em C 3.1 - Introdução Depois dos conceitos
Arquivos de Textos no C - Básico
OpenStax-CNX module: m47676 1 Arquivos de Textos no C - Básico Joao Carlos Ferreira dos Santos This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 TRABALHANDO
CURSO DE PROGRAMAÇÃO EM JAVA
CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro
ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento NetBeans Introdução à Linguagem de Programação JAVA
P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento NetBeans Introdução à Linguagem de Programação JAVA 0 Iniciar o ambiente de desenvolvimento integrado
SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2
SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 1.1 Introdução... 2 1.2 Estrutura do IP... 3 1.3 Tipos de IP... 3 1.4 Classes de IP... 4 1.5 Máscara de Sub-Rede... 6 1.6 Atribuindo um IP ao computador... 7 2
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
BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia
O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos
Sistemas Operacionais. Prof. André Y. Kusumoto [email protected]
Sistemas Operacionais Prof. André Y. Kusumoto [email protected] Estruturas de Sistemas Operacionais Um sistema operacional fornece o ambiente no qual os programas são executados. Internamente,
Algoritmos e Estruturas de Dados I 01/2013. Arquivos. Pedro O.S. Vaz de Melo
Algoritmos e Estruturas de Dados I 01/2013 Arquivos Pedro O.S. Vaz de Melo Problema 1 Considere que um arquivo de dados contém os valores das dimensões (tam. max.: 100) e dos elementos de duas matrizes
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 [email protected] Como
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
Java Como Programar, 8/E
Capítulo 2 Introdução aos aplicativos Java Java Como Programar, 8/E (C) 2010 Pearson Education, Inc. Todos os 2.1 Introdução Programação de aplicativo Java. Utilize as ferramentas do JDK para compilar
Algoritmos e Programação Estruturada
Algoritmos e Programação Estruturada Virgínia M. Cardoso Linguagem C Criada por Dennis M. Ritchie e Ken Thompson no Laboratório Bell em 1972. A Linguagem C foi baseada na Linguagem B criada por Thompson.
socket Objetivo: aprender a construir aplicações cliente/servidor que se comunicam usando sockets
Programação de Sockets Mário Meireles Teixeira. UFMA-DEINF Programação de Sockets Objetivo: aprender a construir aplicações cliente/servidor que se comunicam usando s API de Sockets: introduzida no UNIX
Unidade IV: Ponteiros, Referências e Arrays
Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática
Introdução. Manipulação de arquivos em C. Estrutura de Dados II Prof Jairo Francisco de Souza
Introdução Manipulação de arquivos em C Estrutura de Dados II Prof Jairo Francisco de Souza Manipulação de Arquivo em C Existem dois tipos possíveis de acesso a arquivos na linguagem C : sequencial (lendo
2. OPERADORES... 6 3. ALGORITMOS, FLUXOGRAMAS E PROGRAMAS... 8 4. FUNÇÕES... 10
1. TIPOS DE DADOS... 3 1.1 DEFINIÇÃO DE DADOS... 3 1.2 - DEFINIÇÃO DE VARIÁVEIS... 3 1.3 - VARIÁVEIS EM C... 3 1.3.1. NOME DAS VARIÁVEIS... 3 1.3.2 - TIPOS BÁSICOS... 3 1.3.3 DECLARAÇÃO DE VARIÁVEIS...
Conceitos básicos da linguagem C
Conceitos básicos da linguagem C 2 Em 1969 Ken Thompson cria o Unix. O C nasceu logo depois, na década de 70. Dennis Ritchie, implementou-o pela primeira vez usando o sistema operacional UNIX criado por
LP2 Laboratório de Programação 2 Ciência da Computação. Arquivos
Arquivos Um arquivo é uma abstração utilizada para uniformizar a interação entre o ambiente de execução e os dispositivos externos. A interação de um programa com um dispositivo através de arquivos passa
Arquitetura de Computadores. Tipos de Instruções
Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada
Manipulação de Arquivos
1 Manipulação de Arquivos Para realizar E/S em arquivo, você precisa incluir o arquivo-cabeçalho fstream.h nos programas. Esse arquivo define muitas classes e valores importantes. Abrindo e fechando um
UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA
Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais
ESTRUTURA BÁSICA DE UM PROGRAMA JAVA
ESTRUTURA BÁSICA DE UM PROGRAMA JAVA Prof. Angelo Augusto Frozza, M.Sc. // Primeiro programa em Java public class PrimeiroPrograma { public static void main(string [] args) { System.out.println("Programação
ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA
P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA 0 Inicie o ambiente de desenvolvimento integrado
Lição 9 Trabalhando com bibliotecas de classes
Lição 9 Trabalhando com bibliotecas de classes Introdução à Programação I 1 Objetivos Ao final da lição, o estudante deverá estar apto a: Explicar o que é programação orientada a objetos e alguns de seus
Linguagem de Programação III
Linguagem de Programação III Aula-3 Criando Classes em Java Prof. Esbel Tomás Valero Orellana Da Aula Anterior Classes em Java, sintaxe básica Tipos básicos de dados em Java, como escolher o tipo apropriado
Algoritmos e Programação _ Departamento de Informática
16 ARQUIVOS Um arquivo corresponde a um conjunto de informações (exemplo: uma estrutura de dados-registro), que pode ser armazenado em um dispositivo de memória permanente, exemplo disco rígido. As operações
Introdução a Java. Hélder Nunes
Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais
Bruno Jurkovski Lucas Fialho Zawacki. Site do curso: www.inf.ufrgs.br/pet/cursos/ruby
Bruno Jurkovski Lucas Fialho Zawacki Site do curso: www.inf.ufrgs.br/pet/cursos/ruby Recapitulando... Escopos Constantes Tipagem Métodos Input Estruturas de Controle e Repetição Classes Nativas Blocos
Computação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Introdução Esse não é um curso de Java! O objetivo é aprender os conceitos da programação orientada a objetos,
Programação com sockets (em Java)
com sockets (em Java) Prof. Dr. Julio Arakaki Depto. Ciência da 1 Comunicação entre processos // aplicações - é um dos mecanismos mais utilizados - Java oferece modos de utilização:. TCP ( Transmission
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 [email protected] Fonte: Material da Profª Karina Oliveira Conversão de Tipos Permite converter
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
BSI UFRPE Prof. Gustavo Callou [email protected]
BSI UFRPE Prof. Gustavo Callou [email protected] HelloWorld.java: public class HelloWorld { public static void main (String[] args) { System.out.println( Hello, World ); } } Identificadores são usados
