Black November

ATÉ 50% OFF

TÁ ACABANDO!

0 dias

0 horas

0 min

0 seg

1
resposta

Faça como eu fiz: encapsulando o projeto

Filme

package br.com.alura.screenmatch.modelos;

public class Filme {
    private String nome;
    private int anoDeLancamento;
    private boolean incluidoNoPlano;
    private double somaDasAvalicoes;
    private int totalDeAvaliacoes;
    private int duracaoEmMinutos;

    public String getNome() {
        return nome;
    }

    public int getAnoDeLancamento() {
        return anoDeLancamento;
    }

    public boolean isIncluidoNoPlano() {
        return incluidoNoPlano;
    }

    public int getDuracaoEmMinutos() {
        return duracaoEmMinutos;
    }

    public int getTotalDeAvaliacoes(){
        return totalDeAvaliacoes;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public void setIncluidoNoPlano(boolean incluidoNoPlano) {
        this.incluidoNoPlano = incluidoNoPlano;
    }

    public void setDuracaoEmMinutos(int duracaoEmMinutos) {
        this.duracaoEmMinutos = duracaoEmMinutos;
    }

    public void setAnoDeLancamento(int anoDeLancamento) {
        this.anoDeLancamento = anoDeLancamento;
    }

    public void exibeFichaTecnica (){
        System.out.println("O filme é: " + nome);
        System.out.println("O ano de lançamento é: " + anoDeLancamento);
        System.out.println("Você esta no plano " + incluidoNoPlano);
    }

    public void avalia (double nota){
        somaDasAvalicoes += nota;
        totalDeAvaliacoes++;
    }

    public double calculoMedia (){
        return somaDasAvalicoes / totalDeAvaliacoes;
    }
}

Principal

import br.com.alura.screenmatch.modelos.Filme;

public class Principal {
    public static void main(String[] args) {
        Filme meuFilme = new Filme();

        meuFilme.setNome("Vigadores: Guerra Infinita");
        meuFilme.setAnoDeLancamento(2018);
        meuFilme.setDuracaoEmMinutos(149);
        meuFilme.setIncluidoNoPlano(true);

        meuFilme.exibeFichaTecnica();
        meuFilme.avalia(8);
        meuFilme.avalia(5);
        meuFilme.avalia(10);
        System.out.println("Total de avaliações: " + meuFilme.getTotalDeAvaliacoes());
        System.out.println(meuFilme.calculoMedia());
        //meuFilme.somaDasAvaliacoes = 10;
        //meuFilme.totalDeAvaliacoes = 1;
        //System.out.println(meuFilme.calculoMedia());
    }
}

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta

Oi, Alfredo! Como vai?

Seu encapsulamento ficou bem organizado e os getters e setters estão coerentes, o que deixa o controle dos dados mais seguro. Do jeito que você explicou, a estrutura da classe facilita bastante a leitura e manutenção do projeto.

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