1
resposta

Projeto

package br.com.alura.minhasmusicas.principal;

import br.com.alura.minhasmusicas.modelos.Audio;
import br.com.alura.minhasmusicas.modelos.Musica;
import br.com.alura.minhasmusicas.modelos.Podcast;
import br.com.alura.minhasmusicas.modelos.Favoritos;
import br.com.alura.minhasmusicas.modelos.Classificacao;

public class Principal {
    public static void main(String[] args) {
        Musica musica = new Musica("Tudo É Fase (part. DJ WN)", 3, "Vida Loka, Pt. 2", "Racionais Mc´s" );
        musica.exibirFicha();
        Podcast podcast = new Podcast("Motivadores de Sucesso", 16, "Eslen Delanogare", "Como destravar seu desenvolvimento pessoal Neurocientista revela.");
        podcast.exibirFicha();

        Classificacao classificacao = new Classificacao();

        for (int i = 0; i < 5000; i++) {
            musica.reproduzir();
            if (i % 5 == 0) {
                musica.curtir();
            }
        }

        for (int i = 0; i < 1000; i++) {
            podcast.reproduzir();
            if (i % 10 == 0) {
                podcast.curtir();
            }
        }

        classificacao.classificarPorCurtidas(musica);
        classificacao.classificarPorReproducoes(musica);
        System.out.println("\nClassificacao da musica: " + musica.getClassificacao());

        classificacao.classificarPorCurtidas(podcast);
        classificacao.classificarPorReproducoes(podcast);
        System.out.println("Classificação do podcast: " + podcast.getClassificacao() + "\n");

        Favoritos favoritos = new Favoritos();
        favoritos.adicionar(musica);
        favoritos.adicionar(podcast);

        System.out.println("\nLista de favoritos:");
        favoritos.listarFavoritos();
    }
}

public class Audio {
    private String titulo;
    private int totalreproducoes;
    private int totalCurtidas;
    private int classificacao;


    public void setTitulo(String titulo) {
        this.titulo = titulo;
    }

    public String getTitulo() {
        return titulo;
    }

    public int getTotalreproducoes() {
        return totalreproducoes;
    }

    public int getTotalCurtidas() {
        return totalCurtidas;
    }

    public int getClassificacao() {
        return classificacao;
    }
    public void curte(){
            this.totalCurtidas++;
    }
    public void reproduz(){
        this.totalreproducoes++;
    }


    public void exibirFichaAudio(){

        System.out.println("Título: " + titulo);
        System.out.println("Total de curtidas: "+totalCurtidas);
        System.out.println("Total de reproduções: "+totalreproducoes) ;
        System.out.println("-------------------------------------------------");

    }
}

package br.com.alura.organizaaudio;

public class Musica extends Audio{
    private String album;
    private String artista;
    private String genero;


    public String getAlbum() {
        return album;
    }

    public String getGenero(String s) {
        return genero;
    }
    public void setGenero(String genero) {
        this.genero = genero;
    }

    public void setAlbum(String album) {
        this.album = album;
    }

    public void setArtista(String artista) {
        this.artista = artista;
    }

    @Override
    public void exibirFichaAudio(){

        System.out.println("Título da musica: " + getTitulo());
        System.out.println("Total de curtidas: "+getTotalCurtidas());
        System.out.println("Total de reproduções: "+getTotalreproducoes()) ;
        System.out.println("-------------------------------------------------");

    }

    @Override
    public int getClassificacao() {
        if(this.getTotalreproducoes() > 2000){
            return 10;
        } else{
            return 7;
        }
    }
}
package br.com.alura.organizaaudio;

public class Podcast extends Audio{
    private String apresentador;
    private String descricao;

    public void setApresentador(String apresentador) {
        this.apresentador = apresentador;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    @Override
    public int getClassificacao() {
        if (this.getTotalCurtidas() > 500) {
            return 10;
        }else {
            return 8;
        }
    }
    @Override
    public void exibirFichaAudio(){

        System.out.println("Título do Podcast: " + getTitulo());
        System.out.println("Apresentador: " + getApresentador());
        System.out.println("descrição: "+ getDescricao());
        System.out.println("Total de curtidas: "+ getTotalCurtidas());
        System.out.println("Total de reproduções: "+ getTotalreproducoes()) ;
        System.out.println("-------------------------------------------------");

    }
}
1 resposta
package br.com.alura.organizaaudio;


public class ClassificacaoDosAudios {

    public void inclui(Audio audio){
        if(audio.getClassificacao()>=9){
            System.out.println(audio.getTitulo() + " É um grande sucesso, tem uma ótima avaliação no rank das avaliações! ");
        } else  {
            System.out.println(audio.getTitulo() + " Tem uma boa avaliação no rank das avaliações!");
        }
    }
}