package com.musicasistema.audio;
public class Audio {
private String titulo;
private int duracion; // duración en segundos
private int reproducciones;
private int meGusta;
private double clasificacion; // clasificación de 1 a 5
public Audio(String titulo, int duracion, double clasificacion) {
this.titulo = titulo;
this.duracion = duracion;
this.reproducciones = 0;
this.meGusta = 0;
this.clasificacion = clasificacion;
}
public void reproducir() {
reproducciones++;
System.out.println("Reproduciendo: " + titulo);
}
public void darMeGusta() {
meGusta++;
System.out.println("¡A " + meGusta + " personas les gusta " + titulo + "!");
}
// Getters y Setters
public String getTitulo() { return titulo; }
public int getDuracion() { return duracion; }
public int getReproducciones() { return reproducciones; }
public int getMeGusta() { return meGusta; }
public double getClasificacion() { return clasificacion; }
public void setClasificacion(double clasificacion) {
if (clasificacion >= 1 && clasificacion <= 5) {
this.clasificacion = clasificacion;
} else {
System.out.println("La clasificación debe estar entre 1 y 5.");
}
}
}
package com.musicasistema.audio;
public class Canciones extends Audio {
private String artista;
public Canciones(String titulo, int duracion, double clasificacion, String artista) {
super(titulo, duracion, clasificacion);
this.artista = artista;
}
@Override
public void reproducir() {
super.reproducir();
System.out.println("Artista: " + artista);
}
// Getter y Setter para artista
public String getArtista() { return artista; }
public void setArtista(String artista) { this.artista = artista; }
}
package com.musicasistema.audio;
import com.musicasistema.audio.Canciones;
import com.musicasistema.audio.Podcasts;
public class Podcasts extends Audio {
private String presentador;
public Podcasts(String titulo, int duracion, double clasificacion, String presentador) {
super(titulo, duracion, clasificacion);
this.presentador = presentador;
}
@Override
public void reproducir() {
super.reproducir();
System.out.println("Presentado por: " + presentador);
}
// Getter y Setter para presentador
public String getPresentador() { return presentador; }
public void setPresentador(String presentador) { this.presentador = presentador; }
}
package com.musicasistema;
import com.musicasistema.audio.Canciones;
import com.musicasistema.audio.Podcasts;
public class Main {
public static void main(String[] args) {
Canciones cancion = new Canciones("Shape of You", 240, 4.5, "Ed Sheeran");
Podcasts podcast = new Podcasts("Java para Principiantes", 1800, 5, "Juan Pérez");
cancion.reproducir();
cancion.darMeGusta();
System.out.println("Reproducciones: " + cancion.getReproducciones());
System.out.println("Me gusta: " + cancion.getMeGusta());
podcast.reproducir();
podcast.darMeGusta();
System.out.println("Reproducciones: " + podcast.getReproducciones());
System.out.println("Me gusta: " + podcast.getMeGusta());
}
}