Herramientas de usuario

Herramientas del sitio


bloque3:interfaces

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
bloque3:interfaces [06/03/2018 22:12] – [Herencia: Interfaces] Fernando Valdeónbloque3:interfaces [16/09/2024 20:53] (actual) – editor externo 127.0.0.1
Línea 2: Línea 2:
 El concepto de interface lleva más lejos la idea de clase abstracta. Se conoce a las interfaces como //clases abstractas puras//, **ya que todos sus métodos son abstractos**, y tampoco permiten ser instanciadas. El concepto de interface lleva más lejos la idea de clase abstracta. Se conoce a las interfaces como //clases abstractas puras//, **ya que todos sus métodos son abstractos**, y tampoco permiten ser instanciadas.
  
-Es decir, en una interface, no existe ninguna implementación un método, solo su declaración o definición.+Es decir, en una interface, no existe ninguna implementación de métodos, solo su declaración o definición.
  
-Las interfaces sirven establecer la //forma// de una clase, diseñando qué métodos deben tener, parámetros de los métodos y valores de retorno, pero sin definir su funcionamiento.+Las interfaces sirven para establecer la //forma// de una clase, diseñando qué métodos deben tener, parámetros de esos métodos y valores de retorno, pero sin definir su funcionamiento.
  
 Una interface también puede tener atributos, pero siempre serán ''static final''. Una interface también puede tener atributos, pero siempre serán ''static final''.
Línea 13: Línea 13:
 =====Declaración de interfaces ===== =====Declaración de interfaces =====
   * Para crear una interface, usamos la palabra ''interface''   * Para crear una interface, usamos la palabra ''interface''
-  * Para indicar que una clase emplea una interface, usamos la palabra ''implements''+  * Para indicar que una clase emplea (implementa) una interface, usamos la palabra ''implements''
-  * Una clase puede implementar varias interfaces.+  * Una clase puede implementar varias interfaces (herencia múltiple).
   * La interface puede definirse public o sin modificador de acceso/visibilidad, y tiene el mismo significado que para las clases.    * La interface puede definirse public o sin modificador de acceso/visibilidad, y tiene el mismo significado que para las clases. 
-  * Todos los métodos que define una interface son ''public'' aunque no se indique.+  * Todos los métodos que define una interface son ''public'' y ''abstract'' aunque no se indique explícitamente. 
 +  * Todas las variables que define una interface son ''public static final'' aunque no se indique explícitamente.
   * **Una clase que implementa una interface está obligada a implementar todos sus métodos**.   * **Una clase que implementa una interface está obligada a implementar todos sus métodos**.
  
Línea 43: Línea 44:
  
    //Estoy obligado a implementar    //Estoy obligado a implementar
 +   @Override
    void despegar(float alturaBase){     void despegar(float alturaBase){ 
       if(alturaBase > 500){       if(alturaBase > 500){
Línea 51: Línea 53:
  
    //Estoy obligado a implementar    //Estoy obligado a implementar
 +   @Override
    void aterrizar(){     void aterrizar(){ 
       reducirVelocidadVertical();       reducirVelocidadVertical();
bloque3/interfaces.1520374364.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)