Explicações de Java eduardoleal.com

Propaganda
Explicações de Java
eduardoleal.com
Capítulo 4: Bibliotecas. Nova entrada e saída de dados.
Índice de Conteúdos
1. Introdução. Saída e entrada de dados.
2. Instruções condicionais. Vetores e ciclos.
3. Programação orientada a objetos. Classes.
4. Bibliotecas. Nova entrada e saída de dados.
5. Ficheiros.
6. Estudo Futuro.
Lista dos Cursos Online
Pág. 1 de 5
Explicações de Java
eduardoleal.com
Capítulo 4: Bibliotecas. Nova entrada e saída de dados.
4.1. Bibliotecas
No capítulo anterior usou-se uma classe definida pelo programador para guardar dados referentes,
neste caso, a pessoas. Essa será uma tarefa frequente em programação orientada a objetos: ver que
conceitos intervêm e que classes são necessárias para implementar, no programa, esses conceitos.
No entanto, existem já muitas classes definidas no Java. Uma já usada logo desde o primeiro
programa é a classe System. Em http://docs.oracle.com/javase/7/docs/api/allclasses-noframe.html está
disponível informação sobre as classes do Java.
A classe System tem três campos: err, in e out. Ainda não usámos o campo err mas os campos in e
out já foram usados. Um campo de uma classe pode ser um objeto de qualquer classe. Neste caso o campo
in é um objeto da classe InputStream e o campo out é um objeto da classe PrintStream. A classe
PrintStream tem vários métodos e um deles é print(), outro é println(). Por isso usou-se no primeiro
programa a instrução:
System.out.println("Este é o meu primeiro programa em Java!");
No próximo programa vai usar-se uma classe também muito importante, a classe String.
Código Progcap4_001.java
A instrução:
String nome = new String(“Manuel António”);
Lista dos Cursos Online
Pág. 2 de 5
Explicações de Java
eduardoleal.com
cria um objeto da classe String chamando um dos vários construtores disponíveis.
Neste programa define-se também uma classe Aluno, que tem dois campos, nome e turma, ambos
objetos da classe String. O construtor da classe Aluno recebe dois argumentos, String, que guarda nas
variáveis da classe Aluno. A classe Aluno tem ainda duas funções getNome() e getTurma() para aceder ao
valor das variáveis, que sendo definidas como private não estão disponíveis na classe onde está a função
main(). Se os valores não estão disponíveis muito menos poderão ser modificados donde faz sentido
definir a função setTurma(String turma) para prever a possibilidade de um aluno mudar de turma.
Pode compilar-se e executar para ver o resultado.
Execução Progcap4_001
4.2. Nova entrada e saída de dados.
As funções read() e write(), usadas em programas anteriores para a entrada e saída de dados, são
métodos respetivamente dos campos in e out da classe System. No que diz respeito a simplicidade de
utilização, não são propriamente as melhores funções para efetuar as tarefas de entrada e saída de dados.
No próximo programa vai usar-se a classe Scanner para, mais facilmente, fazer a entrada de dados.
A classe System fica disponível de forma automática. O mesmo não se passou com a classe IOException,
usada no programa Progcap1_004.java. Também a classe Scanner não fica disponível de forma
automática e é preciso usar a instrução:
import java.util.Scanner;
Para definir um objeto da classe Scanner usa-se:
Scanner leitor = new Scanner(System.in);
No objeto leitor ficam disponíveis vários métodos úteis para a entrada de dados. Assim, para que o
utilizador introduza uma String usa-se a instrução:
nome = leitor.nextLine();
onde nome é um objeto da classe String. Para que o utilizador introduza um inteiro usa-se a instrução:
num = leitor.nextInt();
onde num é um objeto da classe Integer. Poderia ter-se usado num como sendo uma variável do tipo int. A
vantagem em usar um objeto da classe Integer() em vez de uma variável do tipo int é ficarem disponíveis
Lista dos Cursos Online
Pág. 3 de 5
Explicações de Java
eduardoleal.com
vários métodos do objeto da classe Integer().
Código Progcap4_002.java (1ª parte)
Compila-se o programa e executa-se como habitualmente:
Lista dos Cursos Online
Pág. 4 de 5
Explicações de Java
eduardoleal.com
Execução Progcap4_002
Na classe Aluno definiu-se agora um método, imprime(), para facilmente escrever no monitor toda a
informação de cada aluno.
Lista dos Cursos Online
Pág. 5 de 5
Download