O Que É Interface?
E se for necessário herdar de mais de uma classe? O Java permite isso por meio de interfaces. Apesar do nome, uma interface é muito semelhante a uma classe abstrata. Veja a seguir como é feita a declaração de uma interface:
De forma simples, uma interface é utilizada para definir métodos que uma classe irá implementar. Interfaces possuem uma sintaxe distinta para sua criação. Enquanto usamos "public class className { }" ao criar uma classe, a sintaxe para criar uma interface é diferente:
InterfaceExample.java
123456package com.example; public interface InterfaceExample { void methodName(); String methodThatAcceptsAndReturnsString(String parameter); }
- Atenção à declaração do método;
- Não utilizamos modificadores de acesso;
- Não fornecemos corpos de métodos;
- Não há necessidade de rotular métodos como abstract já que estamos trabalhando dentro de uma interface;
- Não criamos campos dentro de interfaces.
Vamos considerar o uso de uma Interface utilizando o exemplo de um Reprodutor de Mídia.
Temos uma Interface chamada MediaPlayer que possui os métodos play, pause e stop. Além disso, existem duas classes que implementam essa interface de reprodutor de mídia, nomeadamente AudioPlayer e VideoPlayer.
MediaPlayer.java
AudioPlayer.java
VideoPlayer.java
12345public interface MediaPlayer { void play(); void pause(); void stop(); }
Como pode ser observado, foi criada uma interface e duas classes que implementam essa interface. A sintaxe é a mesma utilizada ao sobrescrever métodos abstratos. Cada método foi sobrescrito em cada classe para executar sua função específica.
Uma das características das interfaces é a possibilidade de implementar mais de uma interface. Veja um exemplo:
Vehicle.java
VehicleInfo.java
Car.java
123456package vehicle; interface Vehicle { void startEngine(); void stopEngine(); }
Criamos as interfaces Vehicle e VehicleInfo. Além disso, criamos uma classe Car que implementa ambas essas interfaces. Dessa forma, é possível escolher qual comportamento implementar na classe, o que complementa o princípio de abstração da programação orientada a objetos.
Trabalhar com interfaces é muito conveniente, e elas são amplamente utilizadas. No próximo capítulo, também exploraremos as principais diferenças entre uma interface e uma classe abstrata e aprenderemos qual delas é mais adequada para uso prático!
1. O que é uma interface em Java?
2. Em Java, uma classe pode implementar várias interfaces?
3. Qual é o propósito de uma interface em Java?
4. Qual palavra-chave é usada para implementar uma interface em uma classe?
5. O que acontece se uma classe declara implementar uma interface, mas não fornece implementações para todos os seus métodos?
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Can you show me an example of how to declare an interface in Java?
What is the difference between an interface and an abstract class?
How do you implement multiple interfaces in a single class?
Incrível!
Completion taxa melhorada para 4.76
O Que É Interface?
Deslize para mostrar o menu
E se for necessário herdar de mais de uma classe? O Java permite isso por meio de interfaces. Apesar do nome, uma interface é muito semelhante a uma classe abstrata. Veja a seguir como é feita a declaração de uma interface:
De forma simples, uma interface é utilizada para definir métodos que uma classe irá implementar. Interfaces possuem uma sintaxe distinta para sua criação. Enquanto usamos "public class className { }" ao criar uma classe, a sintaxe para criar uma interface é diferente:
InterfaceExample.java
123456package com.example; public interface InterfaceExample { void methodName(); String methodThatAcceptsAndReturnsString(String parameter); }
- Atenção à declaração do método;
- Não utilizamos modificadores de acesso;
- Não fornecemos corpos de métodos;
- Não há necessidade de rotular métodos como abstract já que estamos trabalhando dentro de uma interface;
- Não criamos campos dentro de interfaces.
Vamos considerar o uso de uma Interface utilizando o exemplo de um Reprodutor de Mídia.
Temos uma Interface chamada MediaPlayer que possui os métodos play, pause e stop. Além disso, existem duas classes que implementam essa interface de reprodutor de mídia, nomeadamente AudioPlayer e VideoPlayer.
MediaPlayer.java
AudioPlayer.java
VideoPlayer.java
12345public interface MediaPlayer { void play(); void pause(); void stop(); }
Como pode ser observado, foi criada uma interface e duas classes que implementam essa interface. A sintaxe é a mesma utilizada ao sobrescrever métodos abstratos. Cada método foi sobrescrito em cada classe para executar sua função específica.
Uma das características das interfaces é a possibilidade de implementar mais de uma interface. Veja um exemplo:
Vehicle.java
VehicleInfo.java
Car.java
123456package vehicle; interface Vehicle { void startEngine(); void stopEngine(); }
Criamos as interfaces Vehicle e VehicleInfo. Além disso, criamos uma classe Car que implementa ambas essas interfaces. Dessa forma, é possível escolher qual comportamento implementar na classe, o que complementa o princípio de abstração da programação orientada a objetos.
Trabalhar com interfaces é muito conveniente, e elas são amplamente utilizadas. No próximo capítulo, também exploraremos as principais diferenças entre uma interface e uma classe abstrata e aprenderemos qual delas é mais adequada para uso prático!
1. O que é uma interface em Java?
2. Em Java, uma classe pode implementar várias interfaces?
3. Qual é o propósito de uma interface em Java?
4. Qual palavra-chave é usada para implementar uma interface em uma classe?
5. O que acontece se uma classe declara implementar uma interface, mas não fornece implementações para todos os seus métodos?
Obrigado pelo seu feedback!