Olá! Segue o código com o complemento, mas gostaria, se possível, de uma explicação mais detalhada de como funciona a lógica do 'for i'. Pelo menos para a classe Podcast não entendi porque a classificação ficou com a nota 8. Qual o valor que deveria colocar no 'for i' nos métodos 'reproduz' e 'curte' e também no getTotalCurtidas para retornar a nota 10? E por último, como usar o atributo 'classificacao' da classe 'Audio'? Agradeço muito.
package br.com.alura.minhasmusicas.modelos;
public class Audio {
private String titulo;
private int totalReproducoes;
private int totalCurtidas;
private int classificacao;
public String getTitulo() {return titulo; }
public void setTitulo(String titulo) {this.titulo = titulo; }
public int getTotalReproducoes() { return totalReproducoes;}
public int getTotalCurtidas() {return totalCurtidas; }
public int getClassificacao() {return classificacao; }
public void curte(){his.totalCurtidas++;}
public void reproduz(){this.totalReproducoes++;}}
package br.com.alura.minhasmusicas.modelos;
public class Podcast extends Audio{
private String apresentador;
private String descricao;
public String getApresentador() {return apresentador;}
public void setApresentador(String apresentador) {this.apresentador = apresentador; }
public String getDescricao() {return descricao; }
public void setDescricao(String descricao) { this.descricao = descricao; }
@Override
public int getClassificacao() {
if (this.getTotalCurtidas() > 500){
return 10;
}else {
return 8; } }}
package br.com.alura.minhasmusicas.modelos;
public class Musica extends Audio{
private String album;
private String cantor;
private String genero;
public String getAlbum() {return album;}
public void setAlbum(String album) {this.album = album; }
public String getCantor() {return cantor; }
public void setCantor(String cantor) {this.cantor = cantor; }
public String getGenero() {return genero;}
public void setGenero(String genero) {this.genero = genero;}
@Override
public int getClassificacao() {
if (this.getTotalReproducoes() > 2000){
return 10;
}else{
return 7;}}}
package br.com.alura.minhasmusicas.modelos;
public class MinhasPreferidas {
public void inclui(Audio audio){
if (audio.getClassificacao() >= 9){
System.out.println(audio.getTitulo() + " é considerado sucesso absoluto e preferido por todos.");
}else{
System.out.println(audio.getTitulo() + " também é um dos que todo mundo está curtindo."); }}}
package br.com.alura.minhasmusicas.principal;
import br.com.alura.minhasmusicas.modelos.MinhasPreferidas;
import br.com.alura.minhasmusicas.modelos.Musica;
import br.com.alura.minhasmusicas.modelos.Podcast;
public class CCPrincipal {
public static void main(String[] args) {
Musica minhaMusica = new Musica();
minhaMusica.setTitulo("Forever");
minhaMusica.setCantor("Kiss");
minhaMusica.setGenero("Rock");
minhaMusica.setAlbum("Hot in the Shade");
System.out.println("A música " + minhaMusica.getTitulo() + " de gênero " + minhaMusica.getGenero() + " da banda " + minhaMusica.getCantor() + " faz parte do álbum " + minhaMusica.getAlbum() + " . ");
System.out.println("Classificação: " + minhaMusica.getClassificacao());
for (int i = 0; i < 1000; i++) {
minhaMusica.reproduz(); }
for (int i = 0; i < 50; i++) {
minhaMusica.curte(); }
Podcast meuPodcast = new Podcast();
meuPodcast.setTitulo("BolhaDev");
meuPodcast.setApresentador("Marcus Mendes");
meuPodcast.setDescricao("é um diário de tecnologia, inovação e programação da Alura");
System.out.println("O " + meuPodcast.getTitulo() + meuPodcast.getDescricao() + " apresentado por " + meuPodcast.getApresentador());
System.out.println("Classificação: " + meuPodcast.getClassificacao());
for (int i = 0; i < 5000; i++) {
meuPodcast.reproduz(); }
for (int i = 0; i < 1000; i++) {
meuPodcast.curte();}
MinhasPreferidas preferidas = new MinhasPreferidas();
preferidas.inclui(meuPodcast);
preferidas.inclui(minhaMusica); }}