Interfaces
Guido Ticona Hurtado
guidoti@gmail.com
 Son clases genéricas
 No se pueden instanciar
 Tienen métodos abstractos que no tienen
implementación
 Puede tener métodos que no son abstractos
 abstract class FiguraGeometrica {
    . . .
    abstract void dibujar();
    . . .
}
 class Circulo extends FiguraGeometrica {
    . . .
    void dibujar() {
        // codigo para dibujar Circulo
        . . .
    }
} 
 Es una clase abstracta pura
 En definición es similar a una clase abstracta
 Todos los miembros son publicos
 Todos los metodos son abstractos
 Solo hay atributos constantes
 Puede haber herencia múltiple de interfaces
 interface InstrumentoMusical {
    void tocar();
    void afinar();
    String tipoInstrumento();
}
 class InstrumentoViento implements InstrumentoMusical {
    void tocar() { . . . };
    void afinar() { . . .};
    String tipoInstrumento() {}
}
 class Guitarra extends InstrumentoViento {
    String tipoInstrumento() {
        return "Guitarra";
    }
}   
 interface InstrumentoMusical {
    void tocar();
    void afinar();
    String tipoInstrumento();
}
 class InstrumentoViento implements InstrumentoMusical {
    void tocar() { . . . };
    void afinar() { . . .};
    String tipoInstrumento() {}
}
 class Guitarra extends InstrumentoViento {
    String tipoInstrumento() {
        return "Guitarra";
    }
}   

4.android java interfaces

  • 1.
  • 2.
     Son clasesgenéricas  No se pueden instanciar  Tienen métodos abstractos que no tienen implementación  Puede tener métodos que no son abstractos
  • 3.
     abstract class FiguraGeometrica {    . . .     abstract void dibujar();     . . . }  class Circulo extends FiguraGeometrica {     . . .     void dibujar() {         // codigo para dibujar Circulo         . . .     } } 
  • 4.
     Es unaclase abstracta pura  En definición es similar a una clase abstracta  Todos los miembros son publicos  Todos los metodos son abstractos  Solo hay atributos constantes  Puede haber herencia múltiple de interfaces
  • 5.
     interface InstrumentoMusical {    void tocar();     void afinar();     String tipoInstrumento(); }  class InstrumentoViento implements InstrumentoMusical {     void tocar() { . . . };     void afinar() { . . .};     String tipoInstrumento() {} }  class Guitarra extends InstrumentoViento {     String tipoInstrumento() {         return "Guitarra";     } }   
  • 6.
     interface InstrumentoMusical {    void tocar();     void afinar();     String tipoInstrumento(); }  class InstrumentoViento implements InstrumentoMusical {     void tocar() { . . . };     void afinar() { . . .};     String tipoInstrumento() {} }  class Guitarra extends InstrumentoViento {     String tipoInstrumento() {         return "Guitarra";     } }