熟悉Java中类和对象的使用方法 15

实验步骤l下载代码:AltDate.javal设计MusicTitle类,要求:1.包含两个String类型的实例变量title和artist,并将它们初始化成“Noti... 实验步骤
l 下载代码:AltDate.java

l 设计MusicTitle类,要求:
1. 包含两个 String 类型的实例变量title 和 artist,并将它们初始化成“Notitle.”和“No artist.”。
2. 实现这两个实例变量的get 和 set 方法,getTitle()、setTitle()、getArtist()和setArtist(),用于获取和设置实例变量 title 和artist 的值。

l 设计MusicStore类,要求:
1. 具有表示店主姓名的实例变量owner,String类型,初始值是“Noowner.”。
2. 具有表示开始营业时间和暂停营业时间的实例变量openTime 和 closeTime,int类型,初始值应该是合理的时间,如 9和21(24 小时之内的 9AM 到9PM)。
3. 将方法 setOwner()、getOwner()添加到MusicStore 类中。set方法应该将实例变量owner 设置为作为自变量传递的任何 String 值。get方法应该返回实例变量owner的值。
4. 添加四个方法,访问、设置开始营业和暂停营业时间:setOpen()、getOpen()、setClose()和getClose()。
5. 添加一个返回 boolean 值(用于表示商店当前是营业中还是暂停营业)的方法:isOpen()。该方法应该将实例变量openTime 和 closeTime 与当前系统时间做比较。当前时间(0..24)应使用所提供的AltDate.getHourInt() 方法获取。
6. 添加方法 getOpenClosedMessage()。它应该根据当前系统时间以及openTime 和 closeTime 实例变量,返回表示商店当前是营业中还是暂停营业的String 值,如 "We're Open!" 或"We're Closed!"。
7. 添加一个 public 方法displayHoursOfOperation()。这个方法在标准输出设备(经常称为stdout 或标准输出)上显示当前是否营业以及日常营业时间信息,至于是命令窗口还是IDE 窗口,则要取决于您的 Java 环境。要求通过get方法获取存储在各自的实例变量中的时间,并显示上/下午(AM/PM)的信息。
8. 将 toString() 方法添加到MusicStore 类中,该方法将与当前实例的相关信息(如店主姓名)并置在一起,并返回生成的String。
9. 添加 MusicTitle[] 类型的实例变量title,且它的初始值是 null,然后实现访问方法setTitles() 和 getTitles()。
10. 将displayMusicTitles() 方法添加到 MusicStore类中,该方法将遍历标题数组,并显示“标题-音乐家”数据。

l 设计TestMusicStore类,将TestMusicStore 设计和实现成带有 public static void main() 方法的public 类。main() 执行以下任务:
1. 创建 MusicStore 的实例;
2. 输入店主姓名,并赋值给MusicStore 类的 owner 实例变量;
3. 输入开业时间和暂停营业时间,并赋值给MusicStore 类的 openTime 和closeTime 实例变量;
4. 输入2张唱片的标题和作者,并赋值给MusicStore 类 title 数组的各元素;
注意,以上的赋值必须使用对应的set方法!否则没有分数!
5. 调用displayHoursOfOperation() 方法来显示营业时间;
6. 用最简单、最合理的方式,在标准输出设备上显示店主姓名;
7. 调用 displayMusicTitles() 方法来显示唱片信息;
8. 使用 exit() 来终止程序。

// --------------------------------输入输出示例 ----------------------------------------
// 输入:
Roberto Baggio
8
22
Las Cosas Que Vives
LauraPausini
LunaNueva
DiegoTorres

// 输出结果:
We'reOpen!
StoreHours:
Daily:8:00 AM - 22:00 PM

Owneris: Roberto Baggio

Title1:
Title: Las Cosas Que Vives
Artist: Laura Pausini

Title 2:
Title: Luna Nueva
Artist: Diego Torres
展开
 我来答
woodpenker
2013-10-14 · 超过13用户采纳过TA的回答
知道答主
回答量:60
采纳率:0%
帮助的人:33.7万
展开全部
代码如下:
public class MusicTitle {
String title ="Notitle.";
String artist="No artist.";
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getArtist() {
return artist;
}
public void setArtist(String artist) {
this.artist = artist;
}

}

public class MusicStore {
String owner="Noowner.";
int openTime =0;
int closeTime=0;
public String getOwner() {
return owner;
}
public void setOwner(String owner) {
this.owner = owner;
}
public void setOpen(int openTime){
this.openTime=openTime;
}
public int getOpen(){
return openTime;
}
public void setClose(int closeTime){
this.closeTime=closeTime;
}
public int getClose(){
return closeTime;
}
public boolean isOpen(){
AltDate AltDate=new AltDate();
int nowtime = AltDate.getHourInt() ;
if(nowtime>=this.getOpen() && nowtime<=this.getClose()){
return true;
}
else{
return false;
}
}
public String getOpenClosedMessage(){
if(isOpen()){
return "We're Open!";

}else{
return "We're Closed!";
}
}
public void displayHoursOfOperation(){
System.out.println("StoreHours:");
System.out.println("Daily:"+this.getOpen()+":00 AM-"+this.getClose()+":00 PM");
}
public String toString(){
return "Owneris:"+ getOwner();
}
MusicTitle[] title=null;
public MusicTitle[] getTitle() {
return title;
}
public void setTitle(MusicTitle[] title) {
this.title = title;
}
public void displayMusicTitles(){
for(int i=0;i<title.length;i++){
System.out.println("Title"+(i+1)+":");
System.out.println("Title:"+title[i].getTitle());
System.out.println("Artist:"+title[i].getArtist());
}
}

}

public class AltDate {

@SuppressWarnings("deprecation")
public int getHourInt(){
java.util.Date date=new java.util.Date();
return date.getHours();

}
}

import java.util.Scanner;

public class TestMusicStore {

/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成的方法存根
MusicStore ms=new MusicStore() ;
Scanner in=new Scanner(System.in);
ms.setOwner(in.next());
ms.setOpen(in.nextInt());
ms.setClose(in.nextInt());
MusicTitle[] mt=new MusicTitle[2];
for(int i=0;i<2;i++){

mt[i].setTitle(in.next());
mt[i].setArtist(in.next());

}
ms.setTitle(mt);
ms.getOpenClosedMessage();
ms.displayHoursOfOperation();
System.out.println(ms.toString());
ms.displayMusicTitles();
System.exit(0);
}

}
herox_hu
2013-10-14 · TA获得超过776个赞
知道小有建树答主
回答量:1122
采纳率:0%
帮助的人:323万
展开全部
基础知道 , 可以私聊
追问
具体的代码呢
追答
java基础,如果自己不能完全了解,学到后面只会越来越吃力,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式