programa de collections 123
Baseado no material do Prof. Julio
Coleções
Java disponibiliza classes que facilitam o agrupamento e processamento de objetos em conjuntos:
– Coleções (Java Collections Framework).
– Estruturas de dados + algoritmos para sua manipulação. Java Collections framework
– Arquitetura unificada para representar e manipular coleções, de forma independente dos detalhes de sua representação.
Coleções
O programador simplesmente utiliza as estruturas de dados sem se preocupar com a maneira como são implementadas.
Vantagens:
– Reutilização de código
– Desempenho superior
• Maior velocidade de execução.
• Menos memória.
• Algoritmos otimizados.
1
Coleções
Coleções:
– De forma simplificada, são objetos capazes de armazenar conjuntos de referências para outros objetos;
• Listas, pilhas, conjuntos, etc
– Correspondem a classes oferecidas na biblioteca padrão de Java;
– Armazenam referências do tipo Object;
– Obrigatório o uso de polimorfismo.
Coleções
Os elementos que compreendem a estrutura de coleções estão no pacote java.util.
Java separa a representação da coleção em:
– Interfaces
• Definem métodos que podem ser usados para manipulação dos objetos nas coleções.
– Implementações
• Classes que implementam as interfaces, mas, internamente, manipulam os dados de forma diferente.
Interface
Interfaces podem ser utilizadas para separar a especificação do comportamento de um objeto de sua implementação concreta.
– Trazem a especificação do conjunto de operações públicas
Dessa forma a interface age como um contrato, o qual define explicitamente quais métodos uma classe deve obrigatoriamente implementar.
2
Implementações
Uma interface deve ser implementada por uma classe
– Uma interface pode ser implementada por diversas classes.
• POLIMORFISMO
– Uma classe pode implementar diversas interfaces. Implementações
Estudo de Caso 1 - Listas
Uma lista é uma coleção