Olá Lucas, tudo bem?
Pelo que entendi da sua pergunta, você está em dúvida sobre como criar a classificação de títulos em um projeto Java que está utilizando Orientação a Objetos.
Vamos lá, se entendi certo, a ideia aqui é que você utilize a interface Classificavel
para definir um contrato que as classes que a implementam devem seguir. Nesse caso, as classes Filme
e Episodio
devem implementar o método getClassificacao()
, que retorna um valor inteiro.
A classificação de um título pode ser feita de várias maneiras, dependendo do contexto do seu projeto. No exemplo dado na aula, a classificação de um filme é baseada na média de avaliações dividida por 2, enquanto a classificação de um episódio é baseada no total de visualizações (se for maior que 100, a classificação é 4, caso contrário, é 2).
Em relação à sua pergunta sobre a criação de uma variável contadora ou classificação por ano de lançamento, você poderia sim criar métodos adicionais em suas classes para lidar com essas situações. Por exemplo, você poderia ter um método contaVisualizacoes()
na classe Episodio
que incrementa uma variável totalVisualizacoes
toda vez que o episódio é assistido. Ou você poderia ter um método classificaPorAno()
na classe Titulo
que retorna uma classificação baseada no ano de lançamento do título.
A classe FiltroRecomendacao
é usada para filtrar títulos baseado na classificação retornada pelo método getClassificacao()
. Se a classificação for maior ou igual a 4, o título é considerado "preferido no momento". Se for maior ou igual a 2, é "muito bem avaliado no momento". Caso contrário, é recomendado para assistir depois.
Espero que essa explicação tenha deixado mais claro o funcionamento da classificação de títulos. Lembre-se, a implementação específica pode variar dependendo do contexto do seu projeto, é só uma sugestão.
Espero ter ajudado e bons estudos!