⇒ Interfaces
Interfaces podem ser consideradas um tipo especial (estereótipo) de classe. Entretanto, interfaces não possuem atributos, somente métodos. Interfaces também não possuem implementação, elas dependem de uma classe que as implementam. Em java, uma interface e a classe que a implementa é feita da seguinte forma:
public interface IObjetoPersistente { public void grava(IObjetoPersistente obj); public IObjetoPersistente le(); } public class Cliente implements IObjetoPersistente { @Override public void grava(IObjetoPersistente obj) { ... } @Override public IObjetoPersistente le() { ... } }
Note que não há implementação na interface IObjetoPersistente. É a classe Cliente que implementa a interface IObjetoPersistente, com suas implementações de grava e le.
Interfaces são importantes para se criar isolamento entre classes, a fim de permitir baixo acoplamento (veremos mais sobre isto no próximo módulo).