1
resposta

[Projeto] Encapsulamento

package br.com.alura.screenmatch.modelos;

public class Movie {
    private String name;
    private String movieGenre;
    private String releaseDate;
    private int ratingCount;
    private double sumOfRatings;
    private int minutesDuration;
    private boolean includePlan;

    public int getsumOfRatings() {
        return ratingCount;
    }
    
    public String getName() {
        return name;
    }

    public String getMovieGenre() {
        return movieGenre;
    }

    public String getReleaseDate() {
        return releaseDate;
    }

    public boolean isIncludePlan() {
        return includePlan;
    }

    public int getMinutesDuration() {
        return minutesDuration;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setMovieGenre(String movieGenre) {
        this.movieGenre = movieGenre;
    }

    public void setReleaseDate(String releaseDate) {
        this.releaseDate = releaseDate;
    }

    public void setMinutesDuration(int minutesDuration) {
        this.minutesDuration = minutesDuration;
    }

    public void setIncludePlan(boolean includePlan) {
        this.includePlan = includePlan;
    }

    public void movieDescription(){
        System.out.println("Movie name: "+name);
        System.out.println("Movie genre: "+movieGenre);
        System.out.println("Movie release date: "+releaseDate);
        System.out.println("Movie minutes duration: "+minutesDuration);
        System.out.println("Movie include of plan?: "+includePlan);
    }

    public void evaluate(double grade) {
        sumOfRatings = sumOfRatings + grade;
        ratingCount++;
    }
    public double getAverageRating() {
        if (ratingCount == 0) {
            return 0;
        }
        return sumOfRatings/ratingCount;
    }
}
import br.com.alura.screenmatch.modelos.Movie;

public class Main {
    public static void main(String[] args) {
        Movie myMovie2 = new Movie();
        myMovie2.setName("Tropa de Elite");
        myMovie2.setReleaseDate("2010");
        myMovie2.setMovieGenre("Action");
        myMovie2.setIncludePlan(true);
        myMovie2.setMinutesDuration(180);


        myMovie2.movieDescription();{
            myMovie2.evaluate(9);
            myMovie2.evaluate(6);
            myMovie2.evaluate(9.4);
            myMovie2.evaluate(3.5);
            System.out.println("Sum of ratings : " + myMovie2.getsumOfRatings());
        }


        System.out.println("Final rating : " + myMovie2.getAverageRating());

    }
}


  

1 resposta

Olá, Luciano! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de classes e encapsulamento para organizar os atributos de um filme com Java, utilizou muito bem os métodos de acesso e modificação para manipular os dados e ainda compreendeu a importância da lógica de avaliação para calcular a média das notas de forma consistente.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Sugestão de conteúdo para você mergulhar ainda mais no tema:

Alguns materiais estão em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!