package com.entronomia.aplicaciones.audiobodega.modelos;
public class Audio {
private String titulo;
private double duracion;
private int numeroDeReproducciones = 0;
private int numeroDeMeGusta = 0;
private int clasificacion;
public String getTitulo() {
return titulo;
}
public void setTitulo(String titulo) {
this.titulo = titulo;
}
public double getDuracion() {
return duracion;
}
public void setDuracion(double duracion) {
this.duracion = duracion;
}
public int getNumeroDeReproducciones() {
return numeroDeReproducciones;
}
public int getNumeroDeMeGusta() {
return numeroDeMeGusta;
}
public int getClasificacion() {
return clasificacion;
}
public void setClasificacion(int clasificacion) {
this.clasificacion = clasificacion;
}
public void meGusta() {
numeroDeMeGusta = numeroDeMeGusta + 1;
}
public void reproducir() {
numeroDeReproducciones = numeroDeReproducciones + 1;
}
}
package com.entronomia.aplicaciones.audiobodega.modelos;
public class Cancion extends Audio {
private String albun;
private String autor;
private String interprete;
private String genero;
public String getAlbun() {
return albun;
}
public void setAlbun(String albun) {
this.albun = albun;
}
public String getAutor() {
return autor;
}
public void setAutor(String autor) {
this.autor = autor;
}
public String getInterprete() {
return interprete;
}
public void setInterprete(String interprete) {
this.interprete = interprete;
}
public String getGenero() {
return genero;
}
public void setGenero(String genero) {
this.genero = genero;
}
@Override
public int getClasificacion() {
if (getNumeroDeMeGusta() >= 1000) {
setClasificacion(8);
} else if (getNumeroDeMeGusta() >= 100 && getNumeroDeMeGusta() < 1000 ) {
setClasificacion(5);
} else {
setClasificacion(2);
}
return super.getClasificacion();
}
}
package com.entronomia.aplicaciones.audiobodega.modelos;
public class Podcast extends Audio {
private String presentador;
private String descripcion;
public String getPresentador() {
return presentador;
}
public void setPresentador(String presentador) {
this.presentador = presentador;
}
public String getDescripcion() {
return descripcion;
}
public void setDescripcion(String descripcion) {
this.descripcion = descripcion;
}
@Override
public int getClasificacion() {
if (getNumeroDeReproducciones() >= 500) {
setClasificacion(7);
} else if (getNumeroDeReproducciones() >= 100 && getNumeroDeReproducciones() < 500 ) {
setClasificacion(5);
} else {
setClasificacion(3);
}
return super.getClasificacion();
}
}
package com.entronomia.aplicaciones.audiobodega.principal;
import com.entronomia.aplicaciones.audiobodega.modelos.Audio;
public class Favoritos {
public void define(Audio audio) {
if (audio.getClasificacion() >= 7) {
System.out.println("El audio " + audio.getTitulo() + " es uno de los favoritos principales");
} else if (audio.getClasificacion() >= 3) {
System.out.println("El audio " + audio.getTitulo() + " esta en la lista de favoritos");
} else {
System.out.println("El audio " + audio.getTitulo() + " no esta agregado a la lista de favoritos");
}
}
}
package com.entronomia.aplicaciones.audiobodega.principal;
import com.entronomia.aplicaciones.audiobodega.modelos.Cancion;
import com.entronomia.aplicaciones.audiobodega.modelos.Podcast;
public class Bodega {
public static void main(String[] args) {
Cancion cancionUno = new Cancion();
cancionUno.setTitulo("My Immortal");
cancionUno.setInterprete("Evanescence");
Podcast podcastUno = new Podcast();
podcastUno.setTitulo("The Five Emperors");
podcastUno.setPresentador("Eric Andresen");
for (int i = 1; i <= 500; i++) {
cancionUno.meGusta();
}
System.out.println("La canción " + cancionUno.getTitulo() + " tiene " + cancionUno.getNumeroDeMeGusta() + " likes");
for (int i = 1; i <= 300; i++) {
podcastUno.reproducir();
}
System.out.println("El podcast " + podcastUno.getTitulo() + " tiene " + podcastUno.getNumeroDeReproducciones() + " reproducciones");
Favoritos audioUno = new Favoritos();
audioUno.define(cancionUno);
audioUno.define(podcastUno);
}
}