Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
0
respuestas

Haga lo que hicimos en aula: encapsulando el proyecto

package com.aluracursos.screenmatch.modelos;

    public class Pelicula{
        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) {
        if (fechaDeLanzamiento > 1900) {
            this.fechaDeLanzamiento = fechaDeLanzamiento;
        } else {
            System.err.println("Error: La fecha de lanzamiento debe ser Mayor a 1900.");
            System.err.println("En la fecha, Ud. ingreso el valor: "+fechaDeLanzamiento);
            this.fechaDeLanzamiento = fechaDeLanzamiento;
        }

    }

    public void setDuracionEnMinutos(int duracionEnMinutos) {
        if(duracionEnMinutos>10){
            this.duracionEnMinutos = duracionEnMinutos;
        }else{
            System.err.println("Error: La duracion en minutos debe ser Mayor a 10.");
            System.err.println("En la  duracion de minutos, Ud. ingreso el valor de: "+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 de la película es: " + this.nombre);
        System.out.println("Su fecha de lanzamiento es: " + this.fechaDeLanzamiento);
        System.out.println("Duración en minutos: "+ getDuracionEnMinutos());
        if(this.incluidoEnElPlan){
            System.out.println("Si esta incluida en el Plan: ");
        }else{
            System.out.println("No esta incluida en el Plan: ");
        }

    }

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

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

package com.aluracursos.screenmatch.modelos;

public class Principal {
    public static void main(String[] args) {
        // ==============================
        // Película 1: Matrix resurrecciones
        // ==============================
        System.out.println("\n===================Pelicula N1=================================================/");
        Pelicula peliUno = new Pelicula();
        peliUno.setNombre("Matrix revoluciones");
        peliUno.setFechaDeLanzamiento(1800);//2007
        peliUno.setDuracionEnMinutos(95);
        peliUno.setIncluidoEnElPlan(true);

        peliUno.muestraFichaTecnica();

        peliUno.evalua(10);
        peliUno.evalua(10);
        peliUno.evalua(7.8);
        System.out.println("Média de evaluaciones de la película: " +peliUno.calculaMedia());
        // ==============================
        //  Película 2: Matrix revoluciones
        // ==============================
        System.out.println("\n===================Pelicula N2=================================================/");
        Pelicula peliDos = new Pelicula();
        peliDos.setNombre("Matrix resurrecciones");
        peliDos.setFechaDeLanzamiento(2021);
        peliDos.setDuracionEnMinutos(8);
        peliDos.setIncluidoEnElPlan(false);

        peliDos.muestraFichaTecnica();

        peliDos.evalua(10);
        peliDos.evalua(8);
        peliDos.evalua(10);
        System.out.println("Média de evaluaciones de la película: " +peliDos.calculaMedia());

    }
}