Qué es la interfaz en Java:cómo implementar la interfaz con un ejemplo
¿Qué es la interfaz en Java?
Una interfaz en Java El lenguaje de programación se define como un tipo abstracto utilizado para especificar el comportamiento de una clase. Una interfaz Java contiene constantes estáticas y métodos abstractos. Una clase puede implementar múltiples interfaces. En Java, las interfaces se declaran mediante la palabra clave de interfaz. Todos los métodos en la interfaz son implícitamente públicos y abstractos.
Ahora, aprenderemos a usar la interfaz en Java.
Sintaxis para declarar la interfaz
Para usar una interfaz en su clase, agregue la palabra clave "implementos" después del nombre de su clase seguido del nombre de la interfaz.
interface { //methods }
Ejemplo para implementar la interfaz
Ahora, comprendamos la interfaz en Java con un ejemplo:
class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle
Haga clic aquí si no se puede acceder al video
¿Por qué se requiere una interfaz?
Para comprender mejor el uso de la interfaz en Java, veamos un ejemplo de interfaz Java. La clase "Reproductor multimedia" tiene dos subclases:reproductor de CD y reproductor de DVD. Cada uno tiene su implementación de interfaz única en el método Java para reproducir música.
Otra clase de "unidad combinada" hereda tanto CD como DVD (vea la imagen a continuación). ¿Qué método de juego debería heredar? Esto puede causar serios problemas de diseño. Y por lo tanto, Java no permite la herencia múltiple.
Ahora tomemos otro ejemplo de Perro.
Suponga que tiene un requisito donde la clase "perro" hereda la clase "animal" y "Mascota" (vea la imagen a continuación). Pero no puedes extender dos clases en Java. Entonces, ¿qué harías? La solución es Interfaz.
El libro de reglas para la interfaz dice,
- Una interfaz de implementación de Java es 100 % de clase abstracta y solo tiene métodos abstractos.
- La clase puede implementar cualquier cantidad de interfaces.
Class Dog puede extenderse a la clase "Animal" e implementar la interfaz como "Mascota".
Ejemplo de interfaz Java:
Entendamos el siguiente programa de interfaz en Java:
Paso 1) Copie el siguiente código en un editor.
interface Pet{ public void test(); } class Dog implements Pet{ public void test(){ System.out.println("Interface Method Implemented"); } public static void main(String args[]){ Pet p = new Dog(); p.test(); } }
Paso 2) Guarde, compile y ejecute el código. Observe la salida de la interfaz en el programa Java.
Diferencia entre clase e interfaz
En clase, puede instanciar una variable y crear un objeto. | En una interfaz, no puede instanciar una variable y crear un objeto. |
La clase puede contener métodos concretos (con implementación) | La interfaz no puede contener métodos concretos (con implementación) |
Los especificadores de acceso utilizados con las clases son privados, protegidos y públicos. | En la interfaz solo se usa un especificador:público. |
¿Cuándo usar la interfaz y la clase abstracta?
- Utilice una clase abstracta cuando sea necesario definir una plantilla para un grupo de subclases
- Utilice una interfaz cuando sea necesario definir un rol para otras clases, independientemente del árbol de herencia de estas clases
Debe conocer datos sobre Interface
- Una clase de Java puede implementar varias interfaces de Java. Es necesario que la clase implemente todos los métodos declarados en las interfaces.
- La clase debe anular todos los métodos abstractos declarados en la interfaz
- La interfaz permite enviar un mensaje a un objeto sin importar a qué clase pertenece.
- La clase debe proporcionar funcionalidad para los métodos declarados en la interfaz.
- Todos los métodos en una interfaz son implícitamente públicos y abstractos
- No se puede instanciar una interfaz
- Una referencia de interfaz puede apuntar a objetos de sus clases de implementación
- Una interfaz puede extenderse desde una o varias interfaces. La clase puede extender solo una clase pero implementar cualquier número de interfaces
- Una interfaz no puede implementar otra interfaz. Tiene que extender otra interfaz si es necesario.
- Una interfaz que se declara dentro de otra interfaz se denomina interfaz anidada
- En el momento de la declaración, se debe inicializar la variable de interfaz. De lo contrario, el compilador arrojará un error.
- La clase no puede implementar dos interfaces en Java que tengan métodos con el mismo nombre pero diferente tipo de retorno.
Resumen :
- La clase que implementa la interfaz necesita proporcionar funcionalidad para los métodos declarados en la interfaz
- Todos los métodos en una interfaz son implícitamente públicos y abstractos
- No se puede instanciar una interfaz
- Una referencia de interfaz puede apuntar a objetos de sus clases de implementación
- Una interfaz puede extenderse desde una o varias interfaces. Una clase puede extender solo una clase pero implementar cualquier número de interfaces
Java
- Interfaz Java
- Tutorial de clase abstracta de C# con ejemplo:¿Qué es la abstracción?
- ¿Qué es la interfaz en C# con un ejemplo?
- Java Hello World:cómo escribir su primer programa Java con un ejemplo
- Método String Length () en Java:cómo encontrar con el ejemplo
- Método Java String charAt() con ejemplo
- Java String termina con () método con ejemplo
- Interfaz vs clase abstracta en Java:¿cuál es la diferencia?
- Java BufferedReader:cómo leer un archivo en Java con un ejemplo
- Algoritmo de ordenación por inserción en Java con ejemplo de programa
- Java - Interfaces