interfaz java
Una interfaz en Java es una serie de declaraciones de métodos y una colección de características de métodos. Una interfaz solo tiene características de método pero no implementación de método, por lo que estos métodos pueden ser implementados por diferentes clases en diferentes lugares. las implementaciones pueden tener diferentes comportamientos (funcionalidad).
Hay dos significados de interfaz: primero, interfaz Java, una estructura que existe en el lenguaje Java, tiene una sintaxis y estructura específicas; segundo, es una colección de características de métodos que posee una clase, que es un resumen lógico. La primera se llama "interfaz Java" y la segunda se llama "interfaz".
En la especificación del lenguaje Java, las características de un método solo incluyen el nombre del método, el número y tipo de parámetros, pero no incluyen el tipo de retorno del método, los nombres de los parámetros y las excepciones lanzadas. Cuando el compilador de Java verifica la sobrecarga de métodos, determinará si los dos métodos están sobrecargados en función de estas condiciones. Pero cuando el compilador de Java verifica la sustitución del método, verificará más a fondo si el tipo de retorno y la excepción arrojada por los dos métodos (supertipo y subtipo) son los mismos.
Las reglas de herencia de interfaz y herencia de implementación son diferentes. Una clase tiene solo una clase principal directa, pero puede implementar múltiples interfaces.
La interfaz Java en sí no tiene ninguna implementación, porque la interfaz Java no implica representación, solo describe el comportamiento público, por lo que la interfaz Java es más abstracta que la clase abstracta Java.
Los métodos de interfaz Java solo pueden ser abstractos y públicos. Las interfaces Java no pueden tener constructores. Las interfaces Java pueden tener propiedades públicas, estáticas y finales.
La interfaz separa las características del método de la implementación del método. Esta separación se refleja en el hecho de que una interfaz a menudo representa un rol, que empaqueta las operaciones y propiedades relacionadas con ese rol, y la clase que implementa esta interfaz es el actor que desempeña este rol. Un papel lo desempeñan diferentes actores y, aparte de desempeñar un papel completamente diferente, diferentes actores no requieren ninguna otra similitud.
Edite este párrafo por qué se usa la interfaz
Para dos funciones similares en dos clases, llamar a sus clases dinámicamente determina una implementación, luego proporcionan una clase principal abstracta, las subclases implementan los métodos definidos por la clase padre respectivamente.
El problema surge: Java es un lenguaje de herencia única. Generalmente, es posible que una clase específica ya tenga una superclase. La solución es agregar una clase principal a su clase principal, o agregar una clase principal a ella. su clase principal. La clase principal de una clase más la clase principal solo se mueve a la parte superior de la jerarquía de clases. De esta manera, diseñar la capacidad de conexión de una clase específica se convierte en una modificación de todas las clases en toda la jerarquía.
Las interfaces son garantía de conectabilidad.
Cualquier clase en una jerarquía puede implementar una interfaz. Esta interfaz afectará a todas las subclases de esta clase, pero no afectará a ninguna superclase de esta clase. Esta clase tendrá que implementar los métodos especificados por esta interfaz, y sus subclases pueden heredar automáticamente estos métodos de esta clase. Por supuesto, también puede optar por reemplazar todos estos métodos, o algunos de ellos. Capacidad de conexión (y se puede cargar con este tipo de interfaz, pasando todas las subclases que lo implementan).
Lo que nos importa no es esa clase específica, sino si esta clase implementa la interfaz que necesitamos.
Las interfaces proporcionan capacidad de conexión en asociación y llamada de métodos. Cuanto mayor sea la escala del sistema de software, más largo será el ciclo de vida. Las interfaces garantizan la flexibilidad y escalabilidad del sistema de software.
Tipos
Utiliza interfaces Java para acoplar unidades de software interna y externamente. Utilice interfaces Java en lugar de clases concretas para declarar tipos de variables, devolver declaraciones de tipos para métodos, declaraciones de tipos para parámetros y convertir tipos de datos.
En una situación ideal, una clase Java concreta sólo debería implementar la interfaz Java y los métodos declarados en la clase Java abstracta, y no debería proporcionar métodos redundantes.
Jerarquía de tipos
Las interfaces Java (y clases abstractas) generalmente se utilizan como punto de partida para una jerarquía de tipos.
Si una clase ya tiene un supertipo primario, al implementar una interfaz, la clase puede tener otro supertipo secundario. Este supertipo secundario se llama tipo mixto.
Edite esta sección de métodos comunes de las interfaces Java
Interfaz de método único
El siguiente es un fragmento de referencia:
interfaz pública Actionlistener () {
public abstract void actionPerformed(ActionEvent event);
}
Solo hay un método y solo uno que implementa esta interfaz (anula el solo uno en este método de interfaz), está calificado para registrarse en la lista de detectores de eventos (el parámetro es del tipo Actionlistener Cuando el origen del evento cambia, este método actionPerformed único se llama automáticamente.
Interfaz de identificación<). /p>
es una interfaz sin métodos ni propiedades. La interfaz de identificación no impone ningún requisito semántico a la clase que la implementa. Solo indica que la clase que la implementa pertenece a un tipo específico (transferencia).
No se recomienda el uso excesivo de interfaces de identificación.
Interfaz constante
Utilice la interfaz Java para declarar algunas constantes y luego use estas constantes mediante la clase que implementa esta interfaz (he hecho esto antes al hacer un bloc de dibujo). Se recomienda no imitar este enfoque de interfaz constante.