Declaring an Interface
public interface Bounceable{
public abstract void bounce( );
public abstract void setBounceFactor(int bf); }
Class Tire implements Bounceable {
public void bounce( ){...}
public void setBounceFactor(int bf){ } }
- Todos los interface methods son implícitamente public and abstract.
- Todas las variables definidas en una interface debe ser public, static, and final - las interfaces sólo puede declarar constantes, no instance variables.Interface methods no debe ser static.
- Dado que los interface methods son abstract, no pueden ser final, strictfp, o native.
- Una interfaz puede extender uno o más interfaces.
- Una interfaz no puede extender otra interfaz.
- Una interfaz no puede implementar otra interfaz o clase.
- Una interfaz debe declararse con la palabra clave interface.
- Un Interfaz puede ser usado en polimorfismo.
public interface Bounceable {
public abstract void bounce();
public abstract void setBounceFactor(int bf);
}
public interface Bounceable {
void bounce(); // No modifiers
void setBounceFactor(int bf); // No modifiers
}
Por ejemplo, las siguientes cinco method declarations, si es declarado dentro de sus propias interfaces, son legales e identicas.
void bounce();
public void bounce();
abstract void bounce();
public abstract void bounce();
abstract public void bounce();
Los siguientes interface method declarations no compilan:
final void bounce(); // final and abstract can never be used - together, and abstract is implied
static void bounce(); // interfaces define instance methods
private void bounce(); // interface methods are always public
protected void bounce(); // (same as above)
Declaring Interface Constants
Usted puede poner constantes en una interface.Con esto garantiza que la implementacion de la interfaz tendra acceso a la misma constante, como si la clase que había heredado.
Las key rule for interface constants son:
final public static
El siguiente codigo no compila:
interface Foo {
int BAR = 42;
void go();
}
class Zap implements Foo {
public void go() {
BAR = 27;
}
}
Usted no puede cambiar el valor de una constante! Una vez que el valor ha sido asignado, el valor no puede ser modificado.
No hay comentarios:
Publicar un comentario