2
respostas

Utilizando interfaces

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.");
        }
    }

}
2 respostas
package br.com.alura.screenmatch.modelos;
import br.com.alura.screenmatch.calculos.CalculadoraDeTempo;
import br.com.alura.screenmatch.calculos.FiltroRecomencao;
import br.com.alura.screenmatch.modelos.Filme;
public class Principal {
    private static Filme Serie;
    public static void main(String[] args) {

        Filme meuFilme = new Filme();
        meuFilme.setNome("Jonh Wick 4");
        meuFilme.setAnoDeLancamento(2023);
        meuFilme.setDuracaoEmMinutos(180);
        meuFilme.setIncluidoNoPlano(true);

        meuFilme.exibeFichaTecnica();
        meuFilme.avalia(8);
        meuFilme.avalia(5);
        meuFilme.avalia(10);

        //System.out.println("Nota do Filme: " + meuFilme.somaDasAvaliacoes);
        System.out.println("Duração do Filme:" + meuFilme.getDuracaoEmMinutos());
        System.out.println("Quantidade de Avalições: " + meuFilme.getTotalDeAvaliacao());
        System.out.printf("Media das Avaliações: %.1f\n ", meuFilme.pegaMedia());


        //meuFilme.somaDasAvaliacoes = 10;
        //meuFilme.totalDeAvaliacao = 1;
        // System.out.println( meuFilme.pegaMedia());

        System.out.println(" ");
        Serie lost = new Serie();
        lost.setNome("Lost");
        lost.setAnoDeLancamento(2000);
        lost.exibeFichaTecnica();
        lost.setTemporadas(10);
        lost.setEpisodiosPorTemporada(10);
        lost.setMinutosPorEpisodio(50);
        System.out.println("Tempo para Maratonar Lost:" +lost.getDuracaoEmMinutos() + " Minutos");

        Filme outroFilme = new Filme();
        outroFilme .setNome("Jonh Wick 3");
        outroFilme .setAnoDeLancamento(2021);
        outroFilme .setDuracaoEmMinutos(120);

        CalculadoraDeTempo calculadora = new CalculadoraDeTempo();
        calculadora.inclui(meuFilme);
        calculadora.inclui(outroFilme);
        calculadora.inclui(lost);
        System.out.println(calculadora.getTempoTotal());

        FiltroRecomencao filtro = new FiltroRecomencao();
        filtro.filtrar(meuFilme);
        Episodio episodio = new Episodio();
        episodio.setNumero(1);
        episodio.setSerie(lost);
        episodio.setTotalVizualizacoes(200);
        filtro.filtrar(episodio);


    }
}

Oii, tudo bom?

Que legal! Obrigada por compartilhar com a comunidade do fórum o seu resultado até o momento, isso enriquece nosso ambiente de aprendizagem!

Continue se dedicando aos estudos e exercitando os conhecimentos adquiridos nas atividades. Qualquer dúvida, fico à disposição.

Abraços.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software