e 6 fazem uso da programacao orientada a objetos (POO). O objetivo e mostrar o que se pode fazer usando as licoes basicas aprendidas na manipulacao de objetos. Os metodos setters (setNomeAtributo) guardam o valor digitado que depois sao usados para gerar a saida de cada objeto criado na lista.Listagem 5: Classe pessoa com o metodo toString() sobrescritopublic class Pessoa { private Integer codigo; private String nome; private String endereco; private Integer idade; public Integer getCodigo() { return codigo; } public void setCodigo(Integer codigo) { this.codigo = codigo; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public Integer getIdade() { return idade; } public void setIdade(Integer idade) { this.idade = idade; } @Override public String toString() { return "Codigo: "+codigo+ "" + "\n"+ "Nome: "+nome+"" + "\n"+"Endereco: "+endereco+"" + "\n"+"Idade: "+idade+"\n"; }} Na Listagem 6 e praticado um pouco de orientacao a objetos. Esse codigo mostra que podem ser armazenados varios objetos Pessoa em uma lista e mais tarde impressos seus dados.Faca um teste, insira dois ou mais cadastros e logo apos escolha a opcao 2. Nesse caso, serao impressos todos os objetos Pessoa guardados na lista.Listagem 6: Classe testadora usando a POOimport java.util.ArrayList;import java.util.List;import java.util.Scanner; public class TestaPessoaScanner { public static void main(String[] args) { dadosPessoas(); } public static void dadosPessoas(){ Scanner sc = new Scanner(System.in); Pessoa pessoa; List<Pessoa> listaPessoas = new ArrayList<Pessoa>(); int opcao = 0; do { System.out.println("## Escolha uma das opcoes abaixo ##"); System.out.println("Opcao 1 - Cadastra pessoas"); System.out.println("Opcao 2 - Imprime pessoas cadastradas"); System.out.println("Opcao 0 - Sair do programa"); System.out.println("_______________________"); System.out.print("Digite aqui sua opcao: "); opcao = Integer.parseInt(sc.nextLine()); if(opcao == 1){ //Cria um novo objeto pessoa = new Pessoa(); System.out.print("Digite o codigo: "); pessoa.setCodigo(Integer.parseInt(sc.nextLine())); System.out.print("Digite o nome: "); pessoa.setNome(sc.nextLine()); System.out.print("Digite o endereco: "); pessoa.setEndereco(sc.nextLine()); System.out.print("Digite a idade: "); pessoa.setIdade(Integer.parseInt(sc.nextLine())); System.out.println(); //Guarda o objeto pessoa em uma lista. listaPessoas.add(pessoa); }else if(opcao == 2){ if(listaPessoas.isEmpty()){ System.out.println("Nao existem pessoas cadastradas, pressione uma tecla para continuar!"); sc.nextLine(); }else{ System.out.println(listaPessoas.toString()); System.out.println("Pressione um tecla para continuar."); sc.nextLine(); } } } while (opcao != 0); sc.close(); }} Para concluir, vamos mostrar um recurso bem interessante que e possivel fazer com a classe Scanner. A Listagem 7 mostra a possibilidade de ler o conteudo de um usando Java.Listagem 7: Leitura do conteudo de um arquivoimport java.io.File;import java.io.FileNotFoundException;import java.util.Scanner; public class LerArquivo { public static void lerTexto(String nomeArquivo){ try { File arquivo = new File(nomeArquivo); Scanner sc = new Scanner(arquivo); while(sc.hasNext()){ System.out.print(sc.nextLine()); } sc.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } } public static void main(String[] args) { lerTexto("poema.txt"); //trocar pelo caminho do arquivo desejado. }}A Figura 2 mostra a localizacao do arquivo que fica dentro da pasta do pacote, o conteudo do arquivo e a saida.Figura 2: Evidencia da saida do textoConclusaoEntao foi mostrada a importancia do uso da classe Scanner, sobre a qual foram apresentados conceitos, caracteristicas, metodos e muitas praticas. Um dos objetivos foi de trabalhar com POO, justamente para mostrar para os iniciantes o pequeno esforco que