INTERFACES 2.7

Interfaces

Una interfaz es un conjunto de métodos abstractos y de constantes cuya funcionalidad es la de determinar el funcionamiento de una clase, es decir, funciona como un molde o como una plantilla. Al ser sus métodos abstractos estos no tiene funcionalidad alguna, sólo se definen su tipo, argumento y tipo de retorno.

La construcción de una Interfaz es la siguiente:

public Interfaz NombreInterfaz{

//Código

}


Para declarar una o más Interfaces ponemos, a la derecha del nombre de la clase, la palabra clave "implements" seguido de los nombres de las interfaces separadas por comas.:

 

class NombreClase implements Interfaz1,Interfaz2,Interfaz3{

//Código

}

También es posible heredar e implementar al mismo tiempo:

class NombreClase extends Herencia implements Interfaz1,Interfaz2,Interfaz3{

//Código

}

 

características de las Interfaces:

  • Las Interfaces solo pueden tener visibilidad de package o public.
  • Todos los métodos declarados en una Interfaz son public y abstract, si no se le indica, Java lo pondrá implícitamente.
  • Los métodos de una Interfaz no pueden ser estáticos, ya que estos deben ser redefinidos, y al ser estáticos les sería imposible.
  • Todos los atributos declarados en una Interfaz son "public static final" y deberán tener asignado un valor constante. Todos los nombres de constantes van en "MAYÚSCULAS"
  • Una clase puede implementar una o más interfaces.
  • Una Interfaz puede heredar de una o varias interfaces, pero no pueden implementar NADA. Como sabemos, las clases solo pueden heredar de otra clase, pero las Interfaces pueden hacer herencia múltiples.
  • Todas las clases que implementen una interfaz deben de redefinir todos los métodos de esa interfaz.
  • Las interfaces no tienen constructor, por lo que no es posible crear objetos con el operador "new" de ésta.
  • Si se implementa en una clase una Interfaz, y esta Interfaz hereda de otra, la clase deberá implementar todos los métodos de la interfaz que implementa y de los métodos que esta hereda.
  • Para la herencia de las interfaces se pone la palabra clave extends y se ponen todas las interfaces que se deseen separadas por comas.
  • Una Interfaz puede ocultar constantes y métodos heredados de otras Interfaces si los vuelve a declarar en la clase que hereda.


Comentarios