prucommercialre.com


Crear una clase genérica en Java

Una clase genérica en Java es una clase que puede operar en un tipo específico determinado por el programador en tiempo de compilación. Para lograr esto, la definición de clase utiliza el tipo de parámetro s que actúan como variables que representan tipos (como int o String).

Para crear una clase genérica, usted enumera el parámetro de tipo después del nombre de la clase entre paréntesis angulares. El parámetro type especifica un nombre que se puede utilizar en toda la clase en cualquier lugar es € d otro modo utilice un tipo. Por ejemplo, hereâ versión simplificada € sa de la declaración de clase para la clase ArrayList:

public class ArrayList <E>

Salí de la prorroga y aplica cláusulas para centrarse en el parámetro de tipo formal: <E>. El parámetro E especifica el tipo de los elementos que se almacenan en la lista.

Para crear una instancia de una clase genérica, debe proporcionar el tipo real que se utilizará en lugar del parámetro de tipo, así:

ArrayList <String> myArrayList;

Aquí el parámetro E es String, por lo que el tipo de elemento para esta instancia de la clase ArrayList es String.

Ahora mira a la declaración del método Add de la clase ArrayList:

boolean add público (Eo)
{
// Cuerpo del método omite (gracias)
}

Donde normalmente se esperaría ver un tipo de parámetro, que vea la letra E. Así, esta declaración de método especifica que el tipo para el parámetro o es del tipo especificado para el parámetro de tipo formal de E. Si E es String, el método add acepta sólo objetos String. Si se llama al método add pasando otra cosa que no sea un parámetro String, el compilador generará un mensaje de error.

También puede utilizar un parámetro de tipo como un tipo de retorno. Hereâ € s la declaración para el método de clase ArrayList get:

E pública get (int index)
{
// Cuerpo del método omitido (es € re recepción)
}

Aquí, E se especifica como el tipo de retorno. Eso significa que si E es String, este método devuelve objetos String.

La principal ventaja de los genéricos es que la comprobación de tipos ocurre en tiempo de compilación. Por lo tanto, después de especificar el valor de un parámetro de tipo formal, el compilador sabe hacer la comprobación de tipos implícitos en el parámetro. Thatâ € s cómo sabe que no debe dejar de agregar objetos String a una colección de empleado.