P69:媒体资料库的设计(CD、DVD例子)

**

P69(媒体资料库的设计(CD、DVD例子)):

**

一、如何将一堆成员变量快速初始化起来?

在这里插入图片描述
点击蓝色区域之后:
在这里插入图片描述

点击生成后:
在这里插入图片描述
这里的 super()先暂时不说,此处可有可无。

二、同一个类里放两个容器

  • 该CD、DVD例子的结构:
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
代码段:

package dome;

import java.util.ArrayList;

public class Database {
	private ArrayList<CD> listCD=new ArrayList<CD>();
	private ArrayList<DVD> listDVD=new ArrayList<DVD>();
	
	public void add(CD cd) {
		listCD.add(cd);
	}
	
	public void add(DVD dvd) {
		listDVD.add(dvd);
	}
	
	public void list() {
		for(CD cd:listCD) {
			cd.print();
		}
		for(DVD dvd:listDVD) {
			dvd.print();
		}
	}
	

	
	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Database db=new Database();
		db.add(new CD("abc","abc",4,60,"..."));
		db.add(new CD("def","def",4,60,"..."));
		db.add(new DVD("xxx","aaa",60,"..."));
		db.list();
	}

}
package dome;

public class CD {
	private String title;
	private String artist;
	private int numofTracks;
	private int playingTime;
	private boolean gotIt=false;
	private String comment;
	
	public CD(String title, String artist, int numofTracks, int playingTime, String comment) {
		super();
		this.title = title;
		this.artist = artist;
		this.numofTracks = numofTracks;
		this.playingTime = playingTime;
		this.comment = comment;
	}


	public static void main(String[] args) {
		// TODO 自动生成的方法存根

	}


	public void print() {
		System.out.println("CD:"+title+":"+artist);
		
	}

}

package dome;

public class DVD {
	private String title;
	private String director;
	private int playingTime;
	private boolean gotIt=false;
	private String comment;
	
	
		
	public DVD(String title, String director, int playingTime, String comment) {
		super();
		this.title = title;
		this.director = director;
		this.playingTime = playingTime;
		this.comment = comment;
	}



	public static void main(String[] args) {
		// TODO 自动生成的方法存根

	}



	public void print() {
		System.out.println("DVD:"+title+":"+director);
		
	}

}

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
设计要求: 1. 设计实现一个出版物的输入输出系统,出版物包括CD磁带,用户选择对某一个出版物输入相关信息,并将输入的信息显示。 2. 各出版物信息包括名字,作者或演唱者,出版社或唱片社,价格,出版日期等相关信息。 3. 使用循环来完成,以接受用户的循环操作。 4. 对于不合要求的输入,给出提示,允许再重新输入。 5. 当用户选择退出时,程序结束。 设计思路: 设计CD磁带三个,每个含有名字,作者或演唱者,出版社或唱片社,价格,出版日期等相关信息。 由于这三个又相关的相同内容,故可设计一个含有公共信息的父。 class MyMedia{ String mediaName; //出版物名称 float price; //出版物价格 String press; //出版社(磁带发行商) String artist; //作者(演唱者) void mediaNameInput() //出版物名称输入 void mediaPriceInput(){ //出版物价格输入 void mediaPressInput(){ //出版社(磁带发行商)输入 void artistInput(){ //作者或演唱者输入 然后分别定义CD磁带三个子,并在各个子中添加新的成员变量。 class MyBook extends MyMedia{ // String editor; //的编辑 Date publishDate=null; //出版日期 String bookISBN; //的ISBN } class MyCD extends MyMedia{ //CD String cdISRC; //CD的ISRC String cdPublisher; //CD的发行商 } class MyTape extends MyMedia{ //磁带 String tapeISRC; } 相应改变各个子中的成员函数。 主程序中用下述语句输出选项供用户选择: System.out.println("\n请选择你要进行的操作(请输入1-4中人一个数字):\n" +"1:输入的信息;\n" +"2:输入CD的信息;\n" +"3:输入磁带的信息;\n" +"4:退出系统;\n"); 用户输入的值保存于变量choice中,程序根据它的值分情况处理: switch(choice){ case 1: //选择为 //要求输入的名称,价格等信息的输入相关信息,然后程序输出这些信息 break; case 2: //选择为CD //要求输入CD的名称,价格等信息的输入相关信息,然后程序输出这些信息 break; case 3: //选择为磁带 //要求输入磁带的名称,价格等信息的输入相关信息,然后程序输出这些信息 break; default: //选择错误 continue_e=false; }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值