Interfaz (Java)
Una interfaz en Java es una colección de métodos abstractos y propiedades constantes.
Una interfaz en Java es una colección de métodos abstractos y propiedades constantes.
En las interfaces se especifica qué se debe hacer pero no su implementación. Serán las clases que implementen estas interfaces las que describan la lógica del comportamiento de los métodos.
La principal diferencia entre interface y abstract es que un interface proporciona un mecanismo de encapsulación de los protocolos de los métodos sin forzar al usuario a utilizar la herencia.
Ventajas
El uso de las interfaces Java proporciona las siguientes ventajas:
- Organizar la programación.
- permiten declarar constantes que van a estar disponibles para todas las clases que queramos (implementando esa interfaz)
- Obligar a que ciertas clases utilicen los mismos métodos (nombres y parámetros).
- Establecer relaciones entre clases que no estén relacionadas.
Uso
Java proporciona dos palabras reservadas para trabajar con interfaces: interface e implements.
Para declarar una interfaz se utiliza:
modificador_acceso interface NombreInterfaz {
....
}
modificador_acceso puede ser una clase de objetos que nos permite utilizar herencia en abstracción constante en las clases en las que se implemente.
Para implementarla en una clase, se utiliza la forma:
modificador_acceso class NombreClase implements NombreInterfaz1 [, NombreInterfaz2]
Una clase puede implementar varias interfaces de los paquetes que se han importado dentro del programa, separando los nombres por comas.
- Ejemplo
- Definición de una interfaz:
interface Nave {
public void moverPosicion (int x, int y);
public void disparar();
.....
}
- Uso de la interfaz definida:
public class NaveJugador implements Nave {
public void moverPosicion (int x, int y) {
//Implementación del método
posActualx = posActualx - x;
posActualy = posActualy - y;
}
public void disparar() {
//Implementación del método
}
...
}
Enlaces externos
- ¿Qué es una interfaz? en el tutorial de Sun Microsystems (en inglés).
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.