Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

aplicando polimorfismo

Clase Titulo:

package com.aluracursos.screenmatch.modelos;

public class Titulo { private String nombre; private int fechaDeLanzamiento; private int duracionEnMinutos; private boolean incluidoEnElPlan; private double sumaDeLasEvaluaciones; private int totalDelasEvaluaciones;

public String getNombre() {
    return nombre;
}

public int getFechaDeLanzamiento() {
    return fechaDeLanzamiento;
}

public int getDuracionEnMinutos() {
    return duracionEnMinutos;
}

public boolean isIncluidoEnElPlan() {
    return incluidoEnElPlan;
}

public void setNombre(String nombre) {
    this.nombre = nombre;
}

public void setFechaDeLanzamiento(int fechaDeLanzamiento) {
    this.fechaDeLanzamiento = fechaDeLanzamiento;
}

public void setDuracionEnMinutos(int duracionEnMinutos) {
    this.duracionEnMinutos = duracionEnMinutos;
}

public void setIncluidoEnElPlan(boolean incluidoEnElPlan) {
    this.incluidoEnElPlan = incluidoEnElPlan;
}

public int getTotalDelasEvaluaciones(){
    return totalDelasEvaluaciones;
}

public void muestraFichaTecnica(){
    System.out.println("El nombre es: " + nombre);
    System.out.println("Su fecha de lanzamiento es: " + fechaDeLanzamiento);
    System.out.println("Duración en minutos: "+ getDuracionEnMinutos());
}

public void evalua(double nota){
    sumaDeLasEvaluaciones += nota;
    totalDelasEvaluaciones++;
}

public double calculaMedia(){
    return sumaDeLasEvaluaciones / totalDelasEvaluaciones;
}

}

Clase Serie:

package com.aluracursos.screenmatch.modelos;

public class Serie extends Titulo{

int temporadas;

int episodiosPorTemporada;

int minutosPorEpisodio;

@Override
public int getDuracionEnMinutos() {
    return temporadas * episodiosPorTemporada * minutosPorEpisodio;
}

public int getTemporadas() {
    return temporadas;
}

public void setTemporadas(int temporadas) {
    this.temporadas = temporadas;
}

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;
}

}

Clase Pelicula:

package com.aluracursos.screenmatch.modelos;

public class Pelicula extends Titulo{

private String director;

public String getDirector() {
    return director;
}

public void setDirector(String director) {
    this.director = director;
}

}

Clase CalculadoraDeTiempo:

package com.aluracursos.screenmatch.modelos;

import com.aluracursos.screenmatch.modelos.Pelicula; import com.aluracursos.screenmatch.modelos.Serie; import com.aluracursos.screenmatch.modelos.Titulo;

public class CalculadoraDeTiempo {

private int tiempoTotal;

public int getTiempoTotal() {
    return tiempoTotal;
}

public void incluye(Titulo titulo){
    this.tiempoTotal += titulo.getDuracionEnMinutos();
}

}

1 respuesta

Hola Rafael, espero que estés bien

Considero su código muy bueno, en este momento no veo puntos de mejora. ¡Continúa con sus estudios y éxito en su carrera!

Gracias por compartir tu ejercício práctico con nosotros! Tu contribución es fundamental para el crecimiento de nuestra comunidad en Alura.

Sigue comprometido y no dudes en regresar al foro en caso que tengas alguna duda o dificultad.

¡Abrazos y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!