Академический Документы
Профессиональный Документы
Культура Документы
Lugar: Autor:
Alberto Alejandro Cortez
Curso:
Calidad de Software: Programacin
Modular y Anti-Patrones de Proyecto
Ao:
2010
Collecciones
Collection Framework
Un marco (framework) de trabajo es un conjunto de
interfaces y/o clases proporcionados para resolver un
problema determinado.
La plataforma Java define a una interfaz como medio para
implementar estndares e instrucciones.
El marco define los comportamientos de los objetos de una
coleccin utilizando una jerarqua de interfaces.
El marco define seis interfaces. Hay dos clases raz en la
parte superior de la jerarqua. stas son las interfaces
collection y map.
Qu es una coleccin?
Es un nico objeto que representa a un grupo de objetos.
La clase con la que se crean los objetos que representan una
coleccin, fueron programadas por alguien y no forma parte
de la caracterstica del propio lenguaje.
Los objetos de la coleccin se denominan elementos.
Las colecciones tratan normalmente con muchos tipos de
objetos, todos los cuales descienden de un tipo padre comn.
(el tipo padre comn es la clase Object).
Para almacenar un int en un objeto Wrapper,
Su longitud es variable.
Pueden almacenar objetos de cualquier tipo de clase.
En la versin 1.5 de java se puede colocar una restriccin
con la cual se limite el tipo de objeto que almacene una
coleccin.
Ej. Collection <Cliente>
Ej. Map <Auto>
Interfaz Collection
Interfaz Collection
Este interfaz, como tipo, es utilizado para manipular colecciones cuando
se desea una generalidad mxima.
Este es el interfaz padre de Set y List. El framework no proporciona
ninguna implementacin suya, sino de sus subtipos.
La interfaz collection se utiliza para cualquier coleccin simple,
desordenada y que pueda tener duplicados. No hay restricciones.
Cualquier tipo de objeto puede utilizarse y pueden existir mltiples casos
del mismo.
Esta interfaz soporta mtodos para agregar, quitar, contar y verificar los
elementos de una coleccin.
En ocasiones una coleccin se denomina bag ("bolsa"), ya que no impone
ninguna regla.
Interfaz Collection
Interfaz List
Interfaz List
La interfaz List hereda de la interfaz Collection.
Establece estipulaciones adicionales a las del interfaz Collection en los
mtodos add, equals, hashCode, iterator y remove. Tambin aade nuevos
mtodos a los all declarados para un acceso posicional.
Las listas son colecciones ordenadas, y pueden tener duplicados.
El orden puede ser el orden natural, que es el orden en el cual los objetos se
agregaron a la lista.
Puesto que la lista est ordenada, los objetos de la misma pueden colocarse
en un ndice.
La primera posicin en una lista es 0.
Existen distintas implementaciones de esta interfaz: ArrayList,
LinkedList,Vector.
Interfaz List
Clases abstractas
Existen unas clases en java.util que empiezan por Abstract + nombre de
interface.
Estas son implementaciones parciales de dichos interfaces. Las
implementaciones de propsito general derivan de ellas.
Su intencin es proporcionar un punto de partida a la hora de construir nuestras
propias implementaciones de los interfaces bsicos, evitando la implementacin
de todos los mtodos definidos en ellos.
Collection:
Las clases abstractas son: AbstrcatCollection, AbstractList, AbstractSet,
AbstractSequentialList
Map:
Las clases abstractas son: AbstractMap
Clases abstractas
Clase ArrayList
Gestiona un arreglo interno de referencia a objetos Object.
Alberga elementos de tipo Object.
Se debe realizar un moldeado siempre que se quiera utilizar
un objeto del ArrayList.
Para crecer disminuir, crea nuevos arreglos y de esta forma
manipula el arreglo interno que posee.
Detalle de ArrayList
Clase ArrayList
Paquete
Las colecciones se encuentran en el paquete:
java.util de las libreras de java.
ArrayList forma parte del paquete java.util
desde la versin 1.2 del jdk
Ejemplo
Clase Persona
Clase Cliente
Clase Producto
Constructores
ArrayList posee 3 constructores de los cuales
usaremos los siguientes:
* public ArrayList(int initialCapacity)
* public ArrayList()
Constructores en ArrayList
Comportamiento en memoria
Mtodo size
En nuestro ejemplo utilizaremos el mtodo:
size el cual devuelve la cantidad de
elementos que se guardaron en un ArrayList.
Mtodo add
En nuestro ejemplo usaremos el mtodo add el cual esta
sobre cargado.
* public boolean add(Object o)
Agrega elementos al final del la lista.
* public void add(int index, Object element)
Agrega elementos en la posicin indicada.
Los elementos en la posicin index y los que estn por
encima se desplazan por encima del agregado.
Comportamiento en memoria
Recorrer un ArrayList
Para poder recorrer un coleccin se utiliza la interfaz
Iterator.
Esta interfaz provee los mtodos:
hasNext:
Devuelve true si el objeto iterador dispone de mas elementos
next:
La llamada repetitiva a next permite recorrer la coleccin
elemento por elemento. Cuando llega al final de la coleccin
lanza NoSuchElementException
remove:
Elimina el ultimo elemento devuelto por next
Interfaz Iterator
Comportamiento en memoria
Comportamiento en memoria
FIN
Preguntas? consultas