项目设计1 :
设计题目 根据系统提示从键盘输入相关内容
设计要求
可以使用类似命令行的方式来实现。程序运行后提示用户可以执行的操作类型,并要求用户输入一种选择。根据用户的选择,提示用户输入相关的信息,最后在屏幕上输出这些信息。
可以使用循环来完成,以接受用户的多次输入。当用户选择退出时,程序结束。对于不合要求的输入,给出提示,允许再重新输入。对于不同类型的输入信息,需要使用分支结构判别。
设计思路 设计书、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;
}
//CD的子类
Class MyCD extends MyMedia {
String cdISRC;
String cdPublisher;
}
//磁带的子类
Class MyTape extends MyMedia {
String tapeISRC;
}
当然,各子类中的成员函数也会相应变化。
请选择你要进行的操作(请输入1―4中任一数字):
1:输入书的信息:
2:输入CD的信息:
3:输入磁带的信息:
4:退出系统:
1
请输入书的名字: JAVA程序设计
请输入书的价格: 15。0
请输入书的出版社:清华大学出版社
请输入书的作者: 张三
请输入书的ISBN: 7-302-06719-8
请输入书的编辑: 焦虹
请输入书的出版日期(yyyy-mm-dd):
你输入了如下信息:
书的名称是: JAVA程序设计
书的价格是: 15。0
书的作者是: 张三
书的ISBN是: 7-302-06719-8
书的出版社是:清华大学出版社
书的编辑是: 焦虹
书的出版日期是:
try {
String mp=new String();
InputStreamReader ir=new InputStreamReader(System.in);
BufferedReader in=new BufferedReader(ir);
mp=in.readLine();
……..
}catch (Exception e) {
System.out.println(e);
}
JAVA实验二: 编制一个日期计算程序
设计要求
由用户输入一个月份,屏幕上输出这个月的月历,每星期一行,从星期日开始,到星期六结束。
练习日历类中日期和日历方法的使用。
设计思路 日历程序中需要使用日历类的实例,生成一个日历类实例的语句为:
Calendar c=GregorianCalendar.getInstance(); //生成Calendar实例
将一年12个月的天数保存在一个数组days中:
Int[]days={31,28,31,30,31,30,31,31,30,31,30,31};
同样地,每一天的名称也保存在数组中:
String days[]={“Sunday”,”Monday”,”Tuesday”,”Wednesday”,”Thursday”,”Friday”,”Satursday”}
用户输入的年份与月份,通过set函数赋给域变量YEAR,MONTH:
c.set(Calendar.YEAR,temp);
c.set(Calendar.MONTH,temp);
显示日历时,将域变量DATE设为1,表示从1号开始显示:
System.out.println(“SUN MON TUE, WED THU FRI SAT”);
c.set(DATE,1);
int first=c.get(Calendar.DAY_OF_WEEK);
int I;
for(i=1;i<first;i++)System.out.print(“ “);
for(i=1;i<=days[month];i++)
{
If (i<10) System.out.print(“ “);
System.out.print(“ “+i);
System.out.print(“ “);
if (first++%7==0) System.out.println( “ “);
}
System.out.println(“\n”);
}
DAY_OF_WEEK表示的是一个星期的第几天,SUNDAY是1,MONDAY是2。
----------------解决方案--------------------------------------------------------