Interface em Java com exemplo
โก Resumo Inteligente
Interface em Java รฉ um abdรดmentracTipo que especifica o comportamento que uma classe deve implementar, contendo constantes e valores absolutos.tracEste recurso explica o que รฉ uma interface, por que ela รฉ necessรกria, como declarรก-la e implementรก-la, e como as interfaces diferem das classes e dos mรฉtodos abstratos.tracclasses t.

Em que consiste a interface Java?
An Interface em Java Uma linguagem de programaรงรฃo รฉ definida como um absolutotracTipo t usado para especificar o comportamento de uma classe. Java A interface contรฉm constantes estรกticas e valores absolutos.tract mรฉtodos. Uma classe pode implementar mรบltiplas interfaces. Em JavaAs interfaces sรฃo declaradas usando a palavra-chave `interface`. Todos os mรฉtodos na interface sรฃo implicitamente pรบblicos e absolutos.tract.
Sintaxe para declaraรงรฃo de interface
Para usar uma interface em sua classe, adicione a palavra-chave "implements" apรณs o nome da classe, seguida pelo nome da interface.
interface { // methods }
Exemplo de implementaรงรฃo de interface
Agora, vamos entender as interfaces em Java com um exemplo:
class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle
Clique aqui. Se o vรญdeo nรฃo estiver acessรญvel.
Clique aqui. se o vรญdeo nรฃo estiver acessรญvel
Por que uma interface รฉ necessรกria?
Para entender o uso de uma interface em Java Melhor, vamos dar uma olhada em... Java Exemplo de interface. A classe โMedia Playerโ possui duas subclasses: CD player e DVD player. Cada uma tem seu prรณprio mรฉtodo de implementaรงรฃo de interface exclusivo para reproduzir mรบsica.
Outra classe, "Unidade combinada", herda tanto CD quanto DVD (veja a imagem abaixo). Qual mรฉtodo de reproduรงรฃo ela deve herdar? Isso pode causar sรฉrios problemas de design e, portanto, Java nรฃo permite mรบltiplos heranรงa.
Agora vejamos outro exemplo, o de um cachorro.
Suponha que vocรช tenha um requisito em que a classe โcachorroโ herde das classes โanimalโ e โPetโ (veja a imagem abaixo). Mas vocรช nรฃo pode estender duas classes em JavaEntรฃo, o que vocรช faria? A soluรงรฃo รฉ uma interface.
O manual de regras para uma interface diz:
- A Java A interface รฉ 100% absoluta.tracclasse t e tem apenas abstracmรฉtodos t.
- Uma classe pode implementar qualquer nรบmero de interfaces.
A classe Dog pode estender a classe โAnimalโ e implementar a interface โPetโ.
Java Exemplo de interface
Vamos entender o programa de interface abaixo em Java:
Passo 1) Copie o cรณdigo a seguir em um editor.
interface Pet { public void test(); } class Dog implements Pet { public void test() { System.out.println("Interface Method Implemented"); } public static void main(String args[]) { Pet p = new Dog(); p.test(); } }
Passo 2) Salve, compile e execute o cรณdigo. Observe a saรญda da interface em Java programa.
Diferenรงa entre classe e interface
| Aula | Interface |
|---|---|
| Em uma classe, vocรช pode instanciar variรกveis โโe criar um objeto. | Em uma interface, vocรช nรฃo pode instanciar variรกveis โโnem criar um objeto. |
| Uma classe pode conter mรฉtodos concretos (com implementaรงรฃo). | Uma interface nรฃo pode conter mรฉtodos concretos (com implementaรงรฃo). |
| Os especificadores de acesso usados โโcom classes sรฃo private, protected e public. | Em uma interface, apenas um especificador รฉ usado: pรบblico. |
Quando usar Interface e AbstracClasse t?
- Use um abdominaltracclasse t quando um modelo precisa ser definido para um grupo de subclasses.
- Utilize uma interface quando for necessรกrio definir uma funรงรฃo para outras classes, independentemente da รกrvore de heranรงa dessas classes.
Deve saber fatos sobre a Interface
- A Java classe pode implementar vรกrios Java interfaces. ร necessรกrio que a classe implemente todos os mรฉtodos declarados nas interfaces.
- Uma classe deve sobrescrever todos os valores absolutos.tract mรฉtodos declarados na interface.
- A interface permite enviar uma mensagem a um objeto sem se preocupar com a classe ร qual ele pertence.
- Uma classe precisa fornecer funcionalidade para os mรฉtodos declarados na interface.
- Todos os mรฉtodos em uma interface sรฃo implicitamente pรบblicos e absolutos.tract.
- Uma interface nรฃo pode ser instanciada.
- Uma referรชncia de interface pode apontar para objetos de suas classes de implementaรงรฃo.
- Uma interface pode estender uma ou vรกrias interfaces. Uma classe pode estender apenas uma classe, mas implementar qualquer nรบmero de interfaces.
- Uma interface nรฃo pode implementar outra interface. Ela precisa estender outra interface, se necessรกrio.
- Uma interface declarada dentro de outra interface รฉ chamada de interface aninhada.
- No momento da declaraรงรฃo, uma variรกvel de interface deve ser inicializada. Caso contrรกrio, o compilador gerarรก um erro.
- Uma classe nรฃo pode implementar duas interfaces em Java que possuem mรฉtodos com o mesmo nome, mas com tipos de retorno diferentes.




