Tem alguma outra aula que reforce a explicação dessa parte da aula , ficou confuso e não consegui assimilar.
Tem alguma outra aula que reforce a explicação dessa parte da aula , ficou confuso e não consegui assimilar.
Oi, tudo bem?
Interfaces em Java são como contratos que uma classe pode optar por seguir. Se uma classe implementa uma interface, ela está se comprometendo a fornecer um comportamento específico. No caso da aula que você está estudando, a interface Classificavel
está sendo usada para garantir que tanto a classe Filme
quanto a classe Episodio
tenham um método getClassificacao()
.
Vamos pegar o exemplo da classe Filme
:
public class Filme extends Titulo implements Classificavel {
// Código omitido
@Override
public int getClassificacao() {
return (int) pegaMedia() / 2;
}
}
Aqui, Filme
está implementando a interface Classificavel
, o que significa que ela deve ter um método getClassificacao()
. A implementação desse método é específica para a classe Filme
, e pode ser diferente para outras classes que implementam a mesma interface.
Agora, vamos olhar para a classe Episodio
:
public class Episodio implements Classificavel {
private int numero;
private String nome;
private Serie serie;
private int totalVisualizacoes;
public int getTotalVisualizacoes() {
return totalVisualizacoes;
}
public void setTotalVisualizacoes(int totalVisualizacoes) {
this.totalVisualizacoes = totalVisualizacoes;
}
@Override
public int getClassificacao() {
if (totalVisualizacoes > 100) {
return 4;
} else {
return 2;
}
}
}
A classe Episodio
também implementa a interface Classificavel
, mas a implementação do método getClassificacao()
é diferente da implementação na classe Filme
. Isso é possível porque a interface apenas especifica que o método deve existir, mas não especifica como o método deve ser implementado. Isso é deixado para as classes que implementam a interface.
Espero que essa explicação tenha ajudado a esclarecer o conceito de interfaces para você. Lembre-se de que é normal não entender tudo de uma vez, e que a prática é a melhor maneira de solidificar esses conceitos.
Um abraço e bons estudos.