网易云课堂java语言程序设计进阶课程第四周编程题
本周我们介绍了以继承方式实现的媒体资料库,在课程代码实现的基础上,请实现一个表达MP3的媒体类型,能和CD、DVD一样存放进这个Database。请提交这个MP3类的代码。如果你认为为了能存放MP3,需要修改Item和Database,也请一并提交Item和Database的代码。
Database类:
package dome;
import java.util.ArrayList;
public class Database {
private ArrayList<Item> listItem = new ArrayList<Item>();
public void add(Item item){
listItem.add(item);
}
public void list(){
for(Item item:listItem){
item.print();
}
}
public static void main(String[] args) {
Database db = new Database();
db.add(new CD("I am a CD","Even",6,24,true,"good"));
db.add(new DVD("I am a DVD","Even",20,true,"wonderful"));
db.add(new Mp3("I am a Mp3","Even",20,true,"talented","Hello World"));
db.list();
}
}
CD类:
package dome;
public class CD extends Item {
private String artist;
private int numofTrack;
public CD(String title, String artist, int numofTrack, int playingTime,boolean gotIt,
String comment) {
super(title, playingTime, gotIt, comment);
this.artist = artist;
this.numofTrack = numofTrack;
}
public static void main(String[] args) {
}
public void print() {
super.print();
System.out.print("artist: "+artist+" ");
System.out.println("numofTrack: "+numofTrack);
}
}
DVD类:
package dome;
public class DVD extends Item {
private String director;
public DVD(String title, String director, int playingTime, boolean gotIt ,String comment) {
super(title, playingTime, gotIt , comment);
this.director = director;
}
public static void main(String[] args) {
}
public void print() {
super.print();
System.out.println("director: "+director);
}
}
Mp3类:
package dome;
public class Mp3 extends Item{
private String lyics;
private String singer;
public Mp3(String title, String singer, int playingTime, boolean gotIt, String comment,
String lyics) {
super(title, playingTime, gotIt, comment);
this.lyics = lyics;
this.singer = singer;
}
public static void main(String[] args) {
}
public void print() {
super.print();
System.out.print("singer: "+singer+" ");
System.out.println("lyics: "+lyics);
}
}
Item类:
package dome;
public class Item {
private String title;
private int playingTime;
private boolean gotIt;
private String comment;
public Item(String title, int playingTime, boolean gotIt ,String comment) {
super();
this.title = title;
this.playingTime = playingTime;
this.gotIt = true;
this.comment = comment;
}
public static void main(String[] args) {
}
public void print() {
System.out.print("title: "+title+" ");
System.out.print("playingTime: "+playingTime+" ");
System.out.print("gotIt: "+gotIt+" ");
System.out.print("comment: "+comment+" ");
}
}
运行结果: