本周我们介绍了以继承方式实现的媒体资料库,在课程代码实现的基础上,请实现一个表达MP3的媒体类型,能和CD、DVD一样存放进这个Data 。请提交这个MP3类的代码。如果你认为为了能存放MP3,需要修改Item和Data ,也请一并提交Item和Data 的代码。
答案内容超过5000字建议使用附件形式上传
1 import java.util.ArrayList; 2 3 public class Data { 4 private ArrayList<Item> listItem = new ArrayList<Item>();//容器,用来装Item类的对象 5 6 //add方法,用来往媒体库里面添加东西 7 public void add(Item item) { 8 listItem.add(item); 9 } 10 11 //list方法,用来展示媒体库里面的东西 12 public void list() { 13 for(Item item:listItem) { 14 item.print(); 15 } 16 } 17 18 public static void main(String[] args) { 19 Data db = new Data (); 20 //往db里面添加MP3 21 db.add(new MP3(\"Faded\",3,true,\"...\",\"Alan Walker\",10)); 22 db.add(new MP3(\"That Girl\",4,true,\"...\",\"Olly Murs\",10)); 23 db.list();//列出db中的东西 24 } 25 26 } 27 28 public class Item { 29 // 定义Item类型的属性 30 private String ; 31 private int playingTime; 32 private boolean gotIt = false; 33 private String comment; 34 35 // 构造函数,用来初始化Item类型的对象 36 // 可使用eclipse菜单栏中的Source\\Generate Constructor Using Fields快速创建 37 public Item(String , int playingTime, boolean gotIt, String comment) { 38 super(); 39 this. = ; 40 this.playingTime = playingTime; 41 this.gotIt = gotIt; 42 this.comment = comment; 43 } 44 45 // print方法 46 public void print() { 47 System.out.print( +\":\"+playingTime+\":\"+gotIt+\":\"+comment); 48 } 49 } 50 51 public class MP3 extends Item { 52 // 定义MP3类区别于父类Item的属性 53 private String artist; 54 private int numofTracks; 55 56 // 构造函数 57 // 可使用eclipse菜单中Source/Generate Constructors from Superclass创建后修改 58 public MP3(String , int playingTime, boolean gotIt, String comment,String artist,int numofTracks) { 59 super( , playingTime, gotIt, comment);//括号内属性从父类获得初始化 60 this.artist=artist; 61 this.numofTracks=numofTracks; 62 } 63 64 // print方法 65 public void print() { 66 System.out.print(\"MP3:\"); 67 super.print(); 68 System.out.println(\":\"+artist+\":\"+numofTracks); 69 } 70 }
继续阅读与本文标签相同的文章
上一篇 :
Dubbox分布式框架
下一篇 :
一款API旅游产品即将霸屏你的手机
-
面对人工智能的发展,人类未来将扮演怎样的角色?
2026-05-19栏目: 教程
-
2019 DevOps 必备面试题——持续集成篇
2026-05-19栏目: 教程
-
从“人工智障”到“人工智能”,Siri开始说人话了!
2026-05-19栏目: 教程
-
Flink 1.9 实战:使用 SQL 读取 Kafka 并写入 MySQL | 9月4号栖夜读
2026-05-19栏目: 教程
-
历时五天用 SwiftUI 做了一款 APP,阿里工程师如何做的?
2026-05-19栏目: 教程
