• Nenhum resultado encontrado

2 Orientação a objetos na prática

N/A
N/A
Protected

Academic year: 2021

Share "2 Orientação a objetos na prática"

Copied!
25
0
0

Texto

(1)

2 – Orientação a objetos na prática

(2)

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 get e set

Capítulo 2 – Orientação a objetos na prática

2.1 Linguagem JAVA

(3)

Leitura de arquivo

É muito comum softwares que salvam em arquivos

Dependendo da aplicação é melhor salvar em arquivo que criar um banco

de dados

Se formos olhar a fundo, um banco de dados, funciona como um

(4)

Leitura de arquivo

Tipos mais frequentes de salvamento:

– Csv

● A primeira linha do arquivo contém o cabeçalho dos dados ● Ou seja, os nomes das colunas

● E todos os seus dados são separados por ; ● Em cada linha contém um registro

(5)

Leitura de arquivo

Tipos mais frequentes de salvamento:

– Separado por “ ”(espaço branco)

● A primeira linha do arquivo contém o cabeçalho dos dados ● Ou seja, os nomes das colunas

● E todos os seus dados são separados por “ ”(espaço branco) ● Em cada linha contém um registro

(6)

Leitura de arquivo

Tipos mais frequentes de salvamento:

– Separado por ,

● A primeira linha do arquivo contém o cabeçalho dos dados ● Ou seja, os nomes das colunas

● E todos os seus dados são separados por , ● Em cada linha contém um registro

Nome,custo,preço, Macarrão,1.23,3.45, Arroz,4.78,9.00, Feijão,3.50,5.50 Teste.txt

Perigoso, pois pode confundir com separador de casas decimais

(7)

Java – Entrada de dados

Classe Scanner

Classe Scanner

Pertence ao pacote 

java.util.Scanner

É a classe que captura os dados inseridos via teclado

– Como toda classe é necessário instânciá-la

– Passando como parêmetro o objeto de entrada System.in – Ex:

Relembrando!

(8)

Java – Entrada de dados

Classe Scanner

Classe Scanner

Pertence ao pacote 

java.util.Scanner

É a classe que captura os dados inseridos via teclado

– Como toda classe é necessário instânciá-la

– Passando como parêmetro o objeto de entrada System.in – Ex:1 import java.util.Scanner;

2

3 class Teste{ 4

5     private static void main( String[] args ) { 6        Scanner ler = new Scanner(System.in);

7     int num1;

8    System.out.print("Entre com o número: ");

9     num1 = ler.nextInt();

10     System.out.printf("O dobro é: %d", 2*num1); 11    }

12 }

Relembrando!

(9)

Leitura de arquivo

Classe Scanner

Classe Scanner

Pertence ao pacote 

java.util.Scanner

Permite fazer o scaneamento de um arquivo

– Agora o parâmetro é um arquivo lido – Em ingles FileReader

(10)

Leitura de arquivo

Classe Scanner

Classe Scanner

Pertence ao pacote 

java.util.Scanner

Permite fazer o scaneamento de um arquivo

– Agora o parâmetro é um arquivo lido – Em ingles FileReader

– Ex:1 import java.util.Scanner;

2

3 class Teste{ 4

5     private static void main( String[] args ) { 6  

(11)

Leitura de arquivo

Classe Scanner

Classe Scanner

Pertence ao pacote 

java.util.Scanner

Permite fazer o scaneamento de um arquivo

– Agora o parâmetro é um arquivo lido – Em ingles FileReader

– Ex:1 import java.util.Scanner;

2 import java.io.FileReader; 3 class Teste{

4

5     private static void main( String[] args ) { 6  

7       FileReader f = new FileReader(caminhoDoArquivo); 8 9 Scanner arquivoLido = new Scanner(f); 10 11     12    } 13 } – Note que –

- O temos que importar a classe FileReader - FileReader é a classe que, encontra e abre o arquivo

– Note que –

- O temos que importar a classe FileReader - FileReader é a classe que, encontra e abre o arquivo

Temos que passar o caminho do arquivo

(12)

Leitura de arquivo

Classe Scanner

Classe Scanner

Pertence ao pacote 

java.util.Scanner

Permite fazer o scaneamento de um arquivo

– Agora o parâmetro é um arquivo lido – Em ingles FileReader

– Ex:1 import java.util.Scanner;

2 import java.io.FileReader; 3 class Teste{

4

5     private static void main( String[] args ) { 6  

7       FileReader f = new FileReader(caminhoDoArquivo); 8 9 Scanner arquivoLido = new Scanner(f); 10 11     12    } 13 }

- O temos que importar a classe FileReader - FileReader é a classe que, encontra e abre o arquivo

- FileReader é a classe que, encontra e abre o arquivo

Ai sim podemos usá-la na classe Scanner

(13)

Leitura de arquivo

Como ler o arquivo de fato?

Como ler o arquivo de fato?

Precisamos saber qual é o delimitador...

Neste caso sabemos que o arquivo está no padrão “csv”

5     private static void main( String[] args ) {

6       FileReader f = new FileReader(caminhoDoArquivo);

7 Scanner arquivoLido = new Scanner(f);

(14)

Leitura de arquivo

Como ler o arquivo de fato?

Como ler o arquivo de fato?

Precisamos saber qual é o delimitador...

Neste caso sabemos que o arquivo está no padrão “csv”

5     private static void main( String[] args ) {

6       FileReader f = new FileReader(caminhoDoArquivo);

7 Scanner arquivoLido = new Scanner(f);

8         arquivoLido.useDelimiter(";");          9

Isto significa que:

● Ele vai ler o arquivo de delimitador a delimitador ● Ou seja, de ; em ;

Isto significa que:

(15)

Leitura de arquivo

Como ler o arquivo de fato?

Como ler o arquivo de fato?

Precisamos saber qual é o comando para fazer a leitura!

5     private static void main( String[] args ) {

6       FileReader f = new FileReader(caminhoDoArquivo);

7 Scanner arquivoLido = new Scanner(f);

8         arquivoLido.useDelimiter(";");         

(16)

Leitura de arquivo

Como ler o arquivo de fato?

Como ler o arquivo de fato?

Precisamos saber qual é o comando para fazer a leitura!

5     private static void main( String[] args ) {

6       FileReader f = new FileReader(caminhoDoArquivo);

7 Scanner arquivoLido = new Scanner(f);

8         arquivoLido.useDelimiter(";");         

9 String aux = arquivoLido.next();

● Este é o comando para fazer a leitura

(17)

Leitura de arquivo

Como ler o arquivo de fato?

Como ler o arquivo de fato?

Precisamos saber qual é o comando para fazer a leitura!

5     private static void main( String[] args ) {

6       FileReader f = new FileReader(caminhoDoArquivo);

7 Scanner arquivoLido = new Scanner(f);

8         arquivoLido.useDelimiter(";");         

9 String aux = arquivoLido.next();

● Este é o comando para fazer a leitura

● Ele pega o que tem de um delimitador a outro

● Este é o comando para fazer a leitura

(18)

Leitura de arquivo

Como ler o arquivo de fato?

Como ler o arquivo de fato?

Agora é só repetir o processo até o final do arquivo...

Para isso usaremos um Laço

5     private static void main( String[] args ) {

6       FileReader f = new FileReader(caminhoDoArquivo);

7 Scanner arquivoLido = new Scanner(f);

8         arquivoLido.useDelimiter(";");         

(19)

Leitura de arquivo

Como ler o arquivo de fato?

Como ler o arquivo de fato?

Agora é só repetir o processo até o final do arquivo...

Para isso usaremos um Laço

5     private static void main( String[] args ) {

6       FileReader f = new FileReader(caminhoDoArquivo);

(20)

Leitura de arquivo

Como ler o arquivo de fato?

Como ler o arquivo de fato?

Agora é só repetir o processo até o final do arquivo...

Para isso usaremos um Laço

5     private static void main( String[] args ) {

6       FileReader f = new FileReader(caminhoDoArquivo);

7 Scanner arquivoLido = new Scanner(f);

8         arquivoLido.useDelimiter(";");         

9 String aux = arquivoLido.next();

10 while (arquivoLido.hasNext()) {

11       String lido = arquivoLido.next(); 12          System.out.println(lido); 13        }       14 arquivoLido.close();   15     16    } – Note que –

- Por segurança verificamos se o arquivo ainda não acabou - método: hasNext()

– Note que –

(21)

Leitura de arquivo

Como ler o arquivo de fato?

Como ler o arquivo de fato?

Agora é só repetir o processo até o final do arquivo...

Para isso usaremos um Laço

5     private static void main( String[] args ) {

6       FileReader f = new FileReader(caminhoDoArquivo);

7 Scanner arquivoLido = new Scanner(f);

8         arquivoLido.useDelimiter(";");         

9 String aux = arquivoLido.next();

10 while (arquivoLido.hasNext()) {

11       String lido = arquivoLido.next(); 12          System.out.println(lido); 13        }       14 arquivoLido.close();   15     16    } Pronto

● Ao final fecha-se o arquivo!

Pronto

(22)

Escrita no arquivo

Semelhante a leitura

Semelhante a leitura

Usa a classe PrintWriter

java.io.PrintWriter

Que por sua vez usa

FileWriter 

do pacote

 java.io.FileWriter;

5  private static void main( String[] args ) {

6     FileWriter arq = new FileWriter(caminhoDoArquivo); 7      PrintWriter gravarArq = new PrintWriter(arq);

8      gravarArq.print(texto); 9      arq.close();

(23)

Escrita no arquivo

Semelhante a leitura

Semelhante a leitura

Usa a classe PrintWriter

java.io.PrintWriter

Que por sua vez usa

FileWriter 

do pacote

 java.io.FileWriter;

Para gravar utilza-se a função:

● print(“texto a ser gravado”)

5  private static void main( String[] args ) {

6     FileWriter arq = new FileWriter(caminhoDoArquivo); 7      PrintWriter gravarArq = new PrintWriter(arq);

8      gravarArq.print(texto); 9      arq.close();

(24)

Leitura e escrita em arquivo

Exercício

Faça um método para classe “Cliente”

Que escreva a classe em “csv”

(25)

Leitura e escrita em arquivo

Exercício

Faça os métodos escrever em arquivo e ler do arquivo para sua classe

Referências

Documentos relacionados

A infecção leva a formas sintomáticas em até 70% dos infectados, sendo suas formas clínicas, nos pacientes sintomáticos, divididas em três fases: aguda ou febril, com duração de

Entre os assuntos que podiam provocar avaliações consideradas “erradas” pelos integralistas estavam: a relação entre o integralismo e o fascismo; a questão do

O trabalho de Ziul já teve destaque na mídia nacional diversas vezes, a exemplo da revista ‘Guitar Player’ brasileira (junho de 2010), a revista virtual GuitarLoad (janeiro de 2011),

TAREFA: Realizar uma atividade de interpretação de texto, em grupo, seguindo os procedimentos descritos na Ficha de Trabalho OBJECTIVO: Desenvolver a capacidade de interpretação

Para construirmos uma fórmula de quadratura Gaussiana para este caso, devemos utilizar os zeros desses polinômios como nós e calcular os pesos através dos polinômios de

Na primeira, tem-se a revisão teórica, na qual se apresenta o embasamento de cada uma das dimensões do estudo; em um segundo momento, observou-se a pesquisa no ensino

do Unasp Reitor: Martin Kuhn Vice-Reitor Executivo Campus EC: Antônio Marcos da Silva Alves Vice-Reitor Executivo Campus HT: Afonso Ligório Cardoso Vice-Reitor Executivo Campus

(Sedehet al., 2014) Iran 26 pacientes 16 sexo feminino 10 sexo masculino (16 a 40 anos), pigmentação melânica gengival fisiológica segmento anterior maxila,