You are on page 1of 8

INTERFACE

Fundamentos POO
Msg. William Frasser Acevedo
Fundamentos de Interface

Una interfaz en Java es una coleccin de mtodos abstractos y propiedades. En ellas se


especifica qu se debe
hacer pero no su implementacin. Sern las clases que implementen estas interfaces las que
describen la lgica
del comportamiento de los mtodos.

La principal diferencia entre interface y abstract es que un interface proporciona un


mecanismo de encapsulacin de los protocolos de los mtodos sin forzar al usuario a utilizar la
herencia.

En una Interface no se pueden definir atributos a menos que sean estticos o constantes; es
decir, static o final.

Fundamentos POO
Msg. William Frasser Acevedo
Fundamentos de Interface

Las interfaces llevan el concepto de clase abstracta un paso ms adelante.


1. Todos los mtodos de un interfaz son abstractos.
2. Un interface puede considerarse similar a una clase abstracta pura.
3. El acceso a un interfaz es pblico.
4. Los atributos en las interfaces son implcitamente public, static y final.
5. Los mtodos en los interfaces no tienen modificadores de acceso, son pblicos.

Los interfaces son implementados por clases.


1. Una clase implementa un interfaz definiendo los cuerpos de todos los mtodos.
2. Una clase abstracta implementa un interface rellenando el cuerpo o bien declarando abstractos los
mtodos.
3. Una clase puede implementar uno o ms interfaces (herencia mltiple).

Si una clase implementa una interfaz, quiere decir que implementa todos los mtodos abstractos de esa
Interfaz, esto se representa con la palabra reservada implements.

Fundamentos POO
Msg. William Frasser Acevedo
Fundamentos de Interface

Las interfaces tambin pueden extenderse (heredarse) unas de otras, en ese caso, se van acumulando los
mtodos que debern incluir las clases que implementen las interfaces.

Atributo

Mtodos
Mtodos Abstractos
Abstractos

Implementa
Hereda

Implementa

Fundamentos POO
Msg. William Frasser Acevedo
Fundamentos de POO Interface

Fundamentos de POO
Msg. William Frasser Acevedo
Fundamentos de POO Interface

Implementacin

Fundamentos de POO
Msg. William Frasser Acevedo
Fundamentos de POO Interface

Propuesta no tiene nota

Cree una interface Vehculo que incluye un atributo entero velocidad mxima, y los mtodos frenar y
acelerar de tipo String, cada mtodo incluye un parmetro tipo entero.
Cree la clase Automvil y declare un atributo de tipo entero velocidad, la clase implementa la interface
Vehculo.
Cree la clase Moto y declare un atributo de tipo entero velocidad, la clase implementa la interface Vehculo.
Finalmente cree la clase usoVehiculo, accesible desde la lnea de comando para probar las dos clases, en la
que se declara un arreglo Vehculo y se crear dos automviles y dos motos.

Fundamentos de POO
Msg. William Frasser Acevedo
Fundamentos de POO Interface

Bibliografa
Libro Estructura de Datos en Java
Autor Yojanes Agilar, Luis, Zohonero Martnez, Ignacio
Editorial McGrawHill Espaa
Capitulo No 4 Pagina 95

Fundamentos de POO
Msg. William Frasser Acevedo

You might also like