Titulo
package br.com.alura.screenmatch.modelos;
public class Serie extends Titulo {
private int temporadas;
private boolean ativa;
private int episodiosPorTemporada;
private int minutosPorEpisodio;
public int getTemporadas() {
return temporadas;
}
public void setTemporadas(int temporadas) {
this.temporadas = temporadas;
}
public boolean isAtiva() {
return ativa;
}
public void setAtiva(boolean ativa) {
this.ativa = ativa;
}
public int getEpisodiosPorTemporada() {
return episodiosPorTemporada;
}
public void setEpisodiosPorTemporada(int episodiosPorTemporada) {
this.episodiosPorTemporada = episodiosPorTemporada;
}
public int getMinutosPorEpisodio() {
return minutosPorEpisodio;
}
public void setMinutosPorEpisodio(int minutosPorEpisodio) {
this.minutosPorEpisodio = minutosPorEpisodio;
}
@Override
public int getDuracaoEmMinutos() {
return temporadas * episodiosPorTemporada + minutosPorEpisodio;
}
}
Calculadora De Tempo
package br.com.alura.screenmatch.calculos;
import br.com.alura.screenmatch.modelos.Filme;
import br.com.alura.screenmatch.modelos.Serie;
import br.com.alura.screenmatch.modelos.Titulo;
public class CalculadoraDeTempo {
private int tempoTotal = 0;
public int getTempoTotal() {
return this.tempoTotal;
}
public void inclui(Titulo titulo) {
System.out.println("Adicionando duração em minutos de " + titulo);
this.tempoTotal += titulo.getDuracaoEmMinutos();
}
}
Princiapal
package br.com.alura.screenmatch.modelos;
import br.com.alura.screenmatch.calculos.CalculadoraDeTempo;
public class Principal {
public static void main(String[] args) {
Filme meuFilme = new Filme();
meuFilme.setNome("Cartas para julieta");
meuFilme.setAnoDeLancamento(2010);
meuFilme.setDuracaoEmMinutos(180);
System.out.println("Duração do filme: " + meuFilme.getDuracaoEmMinutos());
meuFilme.exibeFichaTecnica();
meuFilme.avalia(8);
meuFilme.avalia(10);
meuFilme.avalia(10);
System.out.println("Total de avaliações:" + meuFilme.getTotalDeAvaliacoes());
System.out.println(meuFilme.pegaMedia());
//meuFilme.somaDasAvaliacoes =10;
//meuFilme.totalDeAvaliacoes =1;
// System.out.println(meuFilme.pegaMedia());
Serie theOriginals = new Serie();
theOriginals.setNome("The Originals");
theOriginals.setAnoDeLancamento(2011);
theOriginals.exibeFichaTecnica();
theOriginals.setTemporadas(5);
theOriginals.setEpisodiosPorTemporada(22);
theOriginals.setMinutosPorEpisodio(50);
System.out.println("Duração para maratonar The Originals: " + theOriginals.getDuracaoEmMinutos());
Filme outroFilme = new Filme();
outroFilme.setNome("Doze é demais");
outroFilme.setAnoDeLancamento(2003);
outroFilme.setDuracaoEmMinutos(180);
CalculadoraDeTempo calculadora = new CalculadoraDeTempo();
calculadora.inclui(meuFilme);
calculadora.inclui(outroFilme);
calculadora.inclui(theOriginals);
System.out.println(calculadora.getTempoTotal());
```}
}