¿Qué signigfica implements ActionListener ?
Cuando escribimos implements ActionListener en nuestra declaración de clase, nos comprometemos a implementar, o proporcionar el código, para cualquier método declarado en el interface ActionListener . En otras palabras, cualquier método declarado en ActionListener tiene que ser definido en nuestra clase, la clase que implementa ActionListener . Todo esto se explica abajo.
Classes contra InterfacesLas clases son plantillas de objetos. Definen el tipo de objetos que datos que contendrá y los métodos para operar con esos datos. Un ejemplar de esa clase es la plantilla rellena con los datos y las llamadas a los métodos-- el ejemplar es el objeto.
Podemos crear muchos ejemplares de la misma clase, creando mucho objetos de ese tipo. Cada objeto tiene sus propios datos, y algunos objetos comparten datos específicos, dependiendo de si han sido declarados datos static o instance .
No tenemos que escribir una clase desde el principio. Si ya existe una clase que tiene características similares a la que queremos crear, podemos Usar la palabra clave extends para heredar campos y métodos desde otra clase. Luego añadimos mas campos y métodos para crear una clase más rica que la clase padre. Pero no tenemos que conformarnos con los campos o métodos heredados. Podemos sobreescribir métodos, u ocultar datos de las clase padre para cumplir con nuestras necesidades.
Esto es cierto para clases concretas, pero no para los interfaces.
Los interfaces declaran métodos, y posiblemente campos estáticos, pero no definen métodos. En su lugar, los interfaces sólo declaran los métodos sin ninguna instrucción dentro de ellos. En otras palabras, los interfaces son como plantillas que siempre serán plantillas. No podemos ejemplarizar un interface para crear un objeto. Son como clases sin implementación. ¿Entonces por qué existen?
Sirven para un propósito: para forzar al desarrollador a proporcionar esos métodos, con detalles, en la clase que implements el interface. En otras palabras, implementar un interface significa que estamos haciendo la promesa de usar ciertos métodos, pero nosotros, los desarrolladores, definimos los detalles de esos métodos.
¿Por qué es esto útil o necesario?
Supongamos que tenemos un equipo de desarrolladores que están creando clases para hacer diferentes tipos de objetos animales.Todos esos animales van a tener dos cosas en común:
La diferencia entre los animales está en cómo se mueven y qué y cómo comen. En otras palabras, cada uno necesita tener los métodos locomotion() y eat() , pero cada individuo, cada clase animal, define los detalles de esos métodos separadametne basándose en las necesidades de las especies de animales.
Diseñamos un interface para asegurarnos de que cada objeto animal hace ciertas cosas, y nuestro equipo desarrolla clases como ésta:
Usuarios que han visto este tema también han visto...
- Enviando emails con formato texto y HTML en Java
- La fecha en un JSP
- Java en Hebras
- Construir un pool de objetos en Java
- Servlet Hola Mundo con Java

Información legal | Política de Privacidad | Contacte con nosotros
Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.