package br.com.alura.screenmatch.calculos;
public interface Classificavel {
int getclassificacao();
}
package br.com.alura.screenmatch.modelos;
import br.com.alura.screenmatch.calculos.Classificavel;
public class Filme extends Titulo implements Classificavel{
private String diretor;
public String getDiretor() {
return diretor;
}
public void setDiretor(String diretor) {
this.diretor = diretor;
}
@Override
public int getclassificacao() {
return (int) pegaMedia() / 2;
}
}
package br.com.alura.screenmatch.modelos;
import br.com.alura.screenmatch.calculos.Classificavel;
public class Episodio implements Classificavel {
private int numero;
private String nome;
private Serie serie;
private int totalVizualizacoes;
public int getTotalVizualizacoes() {
return totalVizualizacoes;
}
public void setTotalVizualizacoes(int totalVizualizacoes) {
this.totalVizualizacoes = totalVizualizacoes;
}
public int getNumero() {
return numero;
}
public void setNumero(int numero) {
this.numero = numero;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public Serie getSerie() {
return serie;
}
public void setSerie(Serie serie) {
this.serie = serie;
}
@Override
public int getclassificacao() {
if(totalVizualizacoes > 100) {
return 4;
}
else {
return 2;
}
}
}
package br.com.alura.screenmatch.calculos;
public class FiltroRecomencao {
public void filtrar(Classificavel classificavel){
if(classificavel.getclassificacao() >= 4) {
System.out.println("Esta entre os preferidos do momento!");
} else if (classificavel.getclassificacao() >= 2) {
System.out.println("Muito bem avaliado!");
}
else {
System.out.println("Coloque na sua lista para assistir depois.");
}
}
}