Este documento explica qué es una interfaz en Java. Una interfaz define la forma que debe tener una clase mediante métodos abstractos, permitiendo establecer comportamientos comunes entre clases sin implementar métodos. El documento incluye un ejemplo de una interfaz Figura que es implementada por clases Cuadrado, Círculo y Rectángulo para demostrar cómo una interfaz permite tratar diferentes objetos de forma polimórfica.
1. ¿Qué es una Interface
en JAVA?
ITI. Erick Aguila Martínez
Polimorfismo y Herencia
2. ITI. Erick Aguila Martínez
POO
Para poder dar inicio con este tema debemos conocer los pilares de la programación orientada a objetos, que
son la Abstracción, el Encapsulamiento, la Modularidad, el Polimorfismo y la Herencia, brevemente los
describiré a continuación.
Abstracción: Esta nos habla de como ver los objetos del mundo real y trasladarlos al mundo de la
programación, resaltando las características especiales del objeto en cuestión.
Encapsulamiento: Significa reunir todos los elementos que pueden ser pertenecientes a una misma entidad.
Modularidad: Es la propiedad de poder subdividirse en partes más pequeñas, siendo estas independientes.
Polimorfismo: Es la capacidad de brindar comportamientos diferentes a objetos que provienen de un mismo
tipo.
Herencia: Es la forma en la que las clases se relacionan formando un flujo jerárquico, donde es
posible compartir o extender comportamiento.
3. ITI. Erick Aguila Martínez
Para ayudarnos a conocer el concepto de interface debemos tener presente la definición de una clase
abstracta, es decir una clase que no se puede instanciar pero se puede definir comportamiento en ella para
que sus clases descendientes puedan hacer uso de esté comportamiento, ahora bien una interface es una
clase abstracta pura por lo que todos sus métodos son abstractos y no se pueden implementar en la clase.
Entonces, ¿Para qué sirve una interface?
Esta sirve para establecer la forma que debe tener una clase, en palabras simples una interface es nuestro
molde o esqueleto de clase.
INTERFACE
CLASE
4. ITI. Erick Aguila Martínez
Una ventaja muy clara de las interfaces es que nos permiten declarar constantes, además de métodos que
estarán disponibles para todas las clases que queramos, siempre y cuando estas realicen la implementación
de la interface.
Nos ahorra código evitando tener que escribir las mismas declaraciones de constantes en diferentes clases,
excelente forma de reciclar nuestro código.
5. ITI. Erick Aguila Martínez
Vamos a ver un ejemplo sencillo con el cual podremos apreciar el comportamiento de una interface en JAVA,
en este caso tenemos la interface de Figura.
Aquí tenemos la interface Figura y clases que la implementan Cuadrado, Circulo y Rectángulo, además de la
clase que probará el comportamiento de la interface.
6. ITI. Erick Aguila Martínez
Seguimos con el ejemplo pero ahora veremos el como se comporta en forma de código
7. ITI. Erick Aguila Martínez
Seguimos con el ejemplo pero ahora veremos el como se comporta en forma de código
8. ITI. Erick Aguila Martínez
Como conclusión
Al definir la interface Figura nos damos cuenta que la ocupamos y definimos como un nuevo tipo,
podemos englobar en un ArrayList todo tipo de figuras, siempre y cuando implementen esta Interface
aprovechando de un pilar de la POO el polimorfismo.
Teniendo en cuenta lo anterior nos percatamos de que el concepto que tenemos de interface sobrepasa el
concepto de la clase abstracta.
Como buena práctica es recomendable el uso de interfaces para tener la base o molde de nuestras clases
aunque ellas tengan un comportamiento distinto.
9. ITI. Erick Aguila Martínez
Para más información de ejemplos y detalles, visitar…
http://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=671:para-que-sirven-
las-interfaces-java-implementar-una-interfaz-del-api-ventajas-y-ejemplos-basicos-
cu00697b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188
https://jarroba.com/polimorfismo-en-java-interface-parte-ii-con-ejemplos/