CriandoBits
Identifique-se Entrar Esqueceu a senha? Esqueci minha senha

Java - Interfaces

Por Benedito Silva Júnior - publicado em 18/07/2016


Interface é um recurso da orientação a objeto utilizado em Java que define ações que devem ser obrigatoriamente executadas, mas que cada classe pode executar de forma diferente.

Interfaces contém valores constantes ou assinaturas de métodos que devem ser implementados dentro de uma classe.

E por que isso?

Isso se deve ao fato que muitos objetos (classes) podem possuir a mesma ação (método), porém, podem executá-la de maneira diferente. Usando um exemplo bem drástico, podemos ter uma interface chamada Aereo que possui a assinatura do método voar(). Ou seja, toda classe que implementar Aereo deve dizer como voar().

Portanto, se eu tenho uma classe chamada Passaro e outra chamada Aviao, ambas implementando a interface Aereo, então, nestas duas classes devemos codificar a forma como cada um irá voar, usando o método voar().

Uma interface é criada da mesma forma que uma classe, mas utilizando a palavra-chave interface no lugar de class.

Veja:

Superclasse (classe que fornece a herança):

public interface Aereo //definição da interface Aereo { public void voar(); //método voar não implementado } //a classe Passaro implementa a interface Aereo public class Passaro implements Aereo { public void voar() { //método implementado conforme a classe Passaro System.out.println("Batendo asas..."); } } public class Aviao implements Aereo { //a classe Aviao implementa a interface Aereo public void voar() { //método implementado conforme a classe Aviao System.out.println("Turbina ligada..."); } }

O trecho acima demonstra o uso de interfaces. A interface foi implementada pelas classes Passaro e Aviao, que executaram o método voar() de acordo com suas necessidades.

Características:

» Uma interface não é considerada uma Classe e sim uma Entidade;

» Não possui implementação, apenas assinatura, ou seja, apenas a definição dos seus métodos sem o corpo;

» Todos os métodos são abstratos;

» Seus métodos são implicitamente Públicos e Abstratos;

» Não há como fazer uma instância de uma Interface e nem como criar um Construtor;

» Funcionam como um tipo de "contrato", onde são especificados os atributos, métodos e funções que as classes que implementem essa interface são obrigadas a implementar;

» Já que C# não suporta Heranças Múltiplas, as Interfaces são usadas para implementá-las. 

 
Voltar a pagina anteriorVoltarSubir ao topo da páginaTopo