Professional Documents
Culture Documents
De manera informal podemos definir a una interfaz como una clase en la que
se declaran mtodos y valores constantes, pero no se implementan sino que
sern implementados por una clase que, valga la redundancia, implemente
dicha interfaz.
Tanto las clases como las interfaces tienen prcticamente el mismo formato
general, los siguientes puntos definen las diferencias que existen entre una
clase y una interfaz.
Una interfaz al igual que una clase abstracta, declara los mtodos pero
no los implementa.
Una clase puede implementar varias interfaces, manteniendo la
estructura del lenguaje simple y al mismo tiempo, proveyendo las
ventajas de la herencia mltiple.
No se pueden instanciar objetos a partir de una interfaz.
Todos los mtodos de una interfaz son de forma implcita pblicos y
abstractos.
Todas las variables de una interfaz son de forma implcita pblicas,
estticas y finales.
Cuando una clase implementa una interfaz, debe implementar todos y
cada uno de sus mtodos, siempre y cuando, la clase no sea abstracta.
Una interfaz no tiene una clase padre antecesora (como en el caso de las
clases que por omisin tienen a la clase Object), en vez de eso, las
clases tienen una jerarqua independiente que puede ser aplicada a
cualquier nivel del rbol de clases.
Propsito: para forzar al desarrollador a proporcionar esos mtodos,
con detalles, en la clase que implements la interface. En otras palabras,
implementar un interface significa que estamos haciendo la promesa de
usar ciertos mtodos, pero nosotros, los desarrolladores, definimos los
detalles de esos mtodos.
i El API Java es una Interfaz de Programacin de Aplicaciones (API: por sus siglas en
ingls) provista por los creadores del lenguaje Java, y que da a los programadores los
medios para desarrollar aplicaciones Java. Referencia:
http://es.wikipedia.org/wiki/API_Java