Está en la página 1de 8

4 uujuju3242 invstigacion

Java collections

The Collection in Java is a framework that provides an architecture to store and


manipulate the group of objects.

Java Collections can achieve all the operations that you perform on a data such as
searching, sorting, insertion, manipulation, and deletion.

Java Collection means a single unit of objects. Java Collection framework provides
many interfaces (Set, List, Queue, Deque) and classes (ArrayList, Vector, LinkedList,
PriorityQueue, HashSet, LinkedHashSet, TreeSet).

o What are the two ways to iterate the elements of a collection?


o What is the difference between ArrayList and LinkedList classes in collection
framework?
o What is the difference between ArrayList and Vector classes in collection
framework?
o What is the difference between HashSet and HashMap classes in collection
framework?
o What is the difference between HashMap and Hashtable class?
o What is the difference between Iterator and Enumeration interface in collection
framework?
o How can we sort the elements of an object? What is the difference between
Comparable and Comparator interfaces?
o What does the hashcode() method?
o What is the difference between Java collection and Java collections?
o En java existen 4 pilares básicos para la programación orientada a Objetos, de entre los
cuales encontramos:
o
o Encapsulamiento: es la forma en la que podemos definir como se visualiza la
información o como será oculta, esto para la seguridad de la misma, un atributo
principalmente aparece como un campo público, pero podemos volverlo Privado o en
su defecto para otras cosas dejarlo protegido.(Figure 1)
Encapsulamiento (Figure 1)
o
o
o Herencia: es una manera de reutilizar código, pero se define como la capacidad que
tiene una clase padre de heredad sus atributos y métodos a una clase hija, y aunque
hereda los atributos la clase hija tiene atributos propios. En java no existe la multi-
herencia por lo cual se hace un proceso de interfaces que se asimila a loa que es una
herencia múltiple sin embargo no es lo mismo. (Figure 2)
o
o

Herencia (Figure 2)
o
o Polimorfismo: Se refiere a la posibilidad de definir clases diferentes que tienen
métodos o atributos denominados de forma idéntica pero se comportan diferente.
(Figure 3)
Polimorfismo (Fig
10 public boolean containsAll(Collection<?> c) It is used to search
the

Methods of

. They are:

No. Method Description

1 public boolean hasNext() It returns true if the iterator has more


elements otherwise it returns false.

2 public Object next() It returns the element and moves the cursor
pointer to the next element.

3 public void remove() It removes the last elements returned by the


iterator. It is less used.

Iterable Interface

The Iterable interface is the root interface for all the collection classes. The
Collection interface extends the Iterable interface and therefore all the
subclasses of Collection interface also implement the Iterable interface.

Some of the methods of Collection interface are Boolean add ( Object obj),
Boolean addAll ( Collection c), void clear(), etc. which are implemented by all
the subclasses of Collection interface.

List Interface
Los tres pilares del desarrollo orientado a objetos son la encapsulación, la herencia y el
polimorfismo. Si... ya veo que en la imagen aparece también abstracción... no seas cansino.

La

Ejemplo Java

Sea al Interfaz Comparable.java


public interface Comparable
{
int compareTo(Object otro);
}

Luego la clase Employee podría implementarla para comparar dos


empleados.
La declaración de la clase empleado se modificaría a:
class Employee implements Comparable

1;
return 0;
}

Ver ejemplo EmployeeSortTest.java. Destacar invocación a Array.sort()

Java sólo permite heredar de una clase, pero permite implementar


múltiples interfaces.

Ver ejemplo TimerTest.java


do lo que necesitas saber para alcanzar el éxito que deseas. ¿Cómo
gestionar tu tiempo? ¿Cómo crear buenos hábitos? ¿Cómo dejar de
procrastinar? ¿Cómo planificarse y establecer prioridades?

¡Todo eso y mucho más lo encuentras en Desata a tu Éxito!

Precio aproximado: 8 euros la versión para Kindle y 14 euros la versión tapa


blanda.

6. Cambia el chip: Cómo afrontar cambios que parecen imposibles (Chip


Heath y Dan Heath)

Seguramente ya has oído a alguien diciendo que para tener éxito es


necesario salir de tu zona de confort. Pero, ¿es realmente tan fácil hacerlo?
¿Por qué los cambios nos dan tanto miedo?

Existen algunos hábitos que parecen imposibles de cambiar, e


impulsivamente nos negamos a hacer algunas cosas de forma diferente.

Si sientes que eso te pasa a ti y que necesitas hacer cosas diferentes en tu


vida, ¡Cambia el Chip te va a ser de gran ayuda!

Chip Heath y Dan Heath te van a enseñar a “programar tu cerebro” para


aceptar los cambios de forma más natural y obtener mejores resultados en
tu carrera y en tu vida personal.

Precio aproximado: 8 euros la versión para Kindle y 17 euros la versión tapa


blanda.

7. Marketing de Contenidos (Neil Revilla)

Los emprendedores de la actualidad poseen una infinidad de técnicas y


herramientas que pueden usar a su favor para conseguir más clientes,
realizar más ventas y, claro, crecer cada vez más.

Sin dudas, el marketing de contenidos es una de las estrategias más


poderosas de todas, porque posee una excelente relación costo beneficio.
Es decir, ¡se pueden obtener resultados increíbles con poca inversión!

Es por eso que, si quieres tener éxito, te recomendamos la lectura de esta


obra, que explica la importancia de utilizar el marketing de contenidos en tu
negocio y un paso a paso para conseguir clientes con tus textos (por
ejemplo, por medio de un blog).

El libro de Neil Revilla seguramente te mostrará por qué es tan


importante crear contenidos que conquisten a tu público.

Precio aproximado: 4 euros la versión para Kindle y 10 euros la versión tapa


blanda.

8. SEO: Técnicas avanzadas (Fernando Maciá)

Si quieres tener éxito como emprendedor, no puedes ignorar la importancia


del SEO para cualquier negocio.

Esa estrategia reúne un conjunto de técnic

El constructor de la subclase invoca al constructor de la superclase. Para


ello se incluye, obligatoriamente, la palabra clave super como primera línea
del constructor de la subclase. La palabra super irá seguida de paréntesis
dentro de los cuales pondremos los parámetros que requiera el constructor
de la superclase al que queramos invocar. En este caso solo teníamos un
constructor de superclase que requería tres parámetros. Si p.ej. hubiéramos
tenido otro constructor que no requiriera ningún parámetro podríamos
haber usado uno u otro, es decir, super(nombre, apellidos, edad) ó super(), o
bien ambos teniendo dos constructores para la superclase y dos
constructores para la subclase. Ejemplo:

En la superclase: public Persona() {

nombre = "";

apellidos = "";

edad = 0; }

public Persona (String nombre, String apellidos, int


edad) {

this.nombre = nombre;

this.apellidos = apellidos;

this.edad = edad; }
En la subclase: public Profesor () {

super();

IdProfesor = "Unknown";}

public Profesor (String nombre, String apellidos, int


edad) {

super(nombre, apellidos, edad);

Esto también aplica a arreglos de Employee, cuyas entradas podrían


referirse a instancias de cualquier subclase de Employee.
El inverso no es válido. No se puede asignar una instancia de la superclase
a un nombre para la subclase.

Esta es una forma de polimorfismo por que e puede referirse a un


Employee o a un Manager.

Ligado Dinámico
Es importante entender qué método es aplicado al invocar uno a un
objeto que se puede referir a instancias de distinta clase.
Al momento de la compilación el compilador intenta resolver el método
que corresponde según su nombre y parámetro. Si la superclase y la clase
base tiene definido el mismo método ¿Cuál se llama?. Si el método en la
clase declarada para la variable no es privado, static, o final, se invocará en
forma dinámica. Esto es, se invocará el método definido según el objeto
referenciado por el nombre y no según la declaración del nombre. Por ello,
si una clase derivada redefine el mismo método, éste será invocado.

Casting

Cómo podemos acceder a los métodos definido en una clase derivada


pero no en la base? Se debe hacer un cambio de tipo forzado.
Por ejemplo:
Employee e= new Manager(..);
Usando e no podemos acceder a los métodos sólo presentes en Manager.
Si queremos hacerlo, usamos:
Manager m = (Manager) e;
Ahora sí podemos invocar todos los métodos de Manager sobre
m. ¿Cómo sabemos que e aloja una instancia de Manager? Lo podemos
preguntar con el operador instanceof.
if (e instance of Manager) {
m = (Manager) e;
.....
}

Clases Abstractas (abstract classes)


Llevando la idea de herencia a un extremo podemos pensar en buenas
clases para representar un grupo pero que no tienen instancias propias.
Por ejemplo Forma como clase base de Triangulo, Circulo, Cuadrado.
Forma puede indicar todo el comportamiento válido para una forma pero
no puede instanciarse por si mismo. En ente caso Forma debe declararse
como clase abstracta por tener al menos un método declarado pero no
implementado.

public abstract class Forma {


...
public abstract double area();
..
}

También podría gustarte