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

Desafío: construyendo una nueva aplicación

Estructura del Proyecto

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Codigo:

Clase Main: Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Clase Audio:

package com.uni.pe.modelos;

public class Audio implements Reproducible {
    private String titulo;
    private double duracion;
    private int totalReproducciones;
    private int cantidadMeGusta;
    private double calificacion;

    public Audio(String titulo, double duracion, int totalReproducciones, int cantidadMeGusta) {
        this.titulo = titulo;
        this.duracion = duracion;
        this.totalReproducciones = totalReproducciones;
        this.cantidadMeGusta = cantidadMeGusta;
    }

    public double getCalificacion() {
        return ((double) this.totalReproducciones / this.cantidadMeGusta);
    }

    public void fichaAudio() {
        System.out.println("Titulo: " + this.titulo);
        System.out.println("Duracion: " + this.duracion);
        System.out.println("Total Reproducciones: " + this.totalReproducciones);
        System.out.println("Cantidad Me Gusta: " + this.cantidadMeGusta);
        System.out.println("Calificacion: " + this.getCalificacion());
    }

    //metodos getters and setters
    
    @Override
    public void reproducir() {
        System.out.println("Reproduciendo: " + this.titulo);
        totalReproducciones++;
    }


    @Override
    public void pausar() {
        System.out.println("Pausando: " + this.titulo);
    }


    @Override
    public void detener() {
        System.out.println("Deteniendo: " + this.titulo);
    }
}

Clase Cancion:

package com.uni.pe.modelos;

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

    public Cancion(String titulo, double duracion,int totalReproducciones, int cantidadMeGusta ,String artista, String album, String genero) {
        super(titulo, duracion, totalReproducciones,cantidadMeGusta);
        this.artista = artista;
        this.album = album;
        this.genero = genero;
    }

   //metodos getters and setters
}

Clase Podcast:

package com.uni.pe.modelos;

public class Podcast extends Audio {
    private String Anfitrion;
    private String tema;
    private int numeroEpisodio;

    public Podcast(String titulo, double duracion,int totalReproducciones, int cantidadMeGusta, String Anfitrion, String tema, int numeroEpisodio) {
        super(titulo, duracion, totalReproducciones,cantidadMeGusta);
        this.Anfitrion = Anfitrion;
        this.tema = tema;
        this.numeroEpisodio = numeroEpisodio;
    }

    //metodos getters and setters
}

Interface Reproducible:

package com.uni.pe.modelos;

public interface Reproducible {
    void reproducir();
    void pausar();
    void detener();


}

Clase Musica Favorita:

package com.uni.pe.logica;

import com.uni.pe.modelos.Audio;

public class MusicaFavorita {
    public void mostrarFavoritos(Audio audio) {
        if (audio.getCalificacion() >= 8) {
            System.out.println(audio.getTitulo() + " es una de tus canciones favoritas");
        }
        else {
            System.out.println(audio.getTitulo() + " no es una de tus canciones favoritas");
        }
    }
}
1 respuesta

Hola, Miguel ,

Gracias por compartir tu experiencia con nosotros. Recuerda que estamos aquí para ayudarte. Si necesitas ayuda, no dudes en buscarnos en el foro.

¡Gracias nuevamente!

Saludos,

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