java多媒体继承.doc
《java多媒体继承.doc》由会员分享,可在线阅读,更多相关《java多媒体继承.doc(23页珍藏版)》请在冰豆网上搜索。
![java多媒体继承.doc](https://file1.bdocx.com/fileroot1/2022-10/22/48d7ba4d-2318-4ae6-84df-9cab992f5745/48d7ba4d-2318-4ae6-84df-9cab992f57451.gif)
昆明理工大学理学院
信息与计算科学专业操作性实验报告
年级:
09级姓名:
陈龙飞学号:
200911101111指导教师:
朱志宁
实验课程名称:
java程序设计开课实验室:
理学院机房216
实验成绩:
学风(5)
观察能力(15)
操作能力(30)
调试能力(50)
其它
总分
实验内容:
1.实验/作业题目:
面向对象程序设计1、2
2.实验/作业课时:
各2学时,共4学时
3.实验过程(包括实验环境、实验内容的描述、完成实验要求的知识或技能):
实验环境:
eclipse
实验内容:
编写一个简单的程序,利用数组保存书(Book),cd(CompactDisk),磁带(Tape)信息,并能实现插入、删除、查找功能。
注意使用面向对象的思想进行程序设计。
完成实验要求的知识或技能:
通过这个实验,能用eclipse来编写java程序,掌握java数组的使用和面向对象的编程思想。
4.程序结构(程序中的函数调用关系图。
5.算法描述、流程图或操作步骤:
6.实验数据和实验结果(用屏幕图形表示,可另加附页):
1)、父类与子类定义与继承:
packagemedea1;
publicclassMedia{
privateStringname;
privateStringtype;
privatefloatprice;
publicStringgetname(){
returnname;
}
publicvoidsetname(Stringname){
this.name=name;
}
publicStringgettype(){
returntype;
}
publicvoidsettype(Stringtype){
this.type=type;
}
publicfloatgetprice(){
returnprice;
}
publicvoidsetprice(floatprice){
this.price=price;
}
}
classCompactDiskextendsMedia{
privateintsize;//光盘容量
publicintgetsize(){
returnsize;
}
publicvoidsetsize(intsize){
this.size=size;
}
publicStringgetweight(){
//TODOAuto-generatedmethodstub
returnnull;
}
}
classBookextendsMedia{
privateintweight;//书的重量
publicintgetweight(){
returnweight;
}
publicvoidsetweight(intweight){
this.weight=weight;
}
}
classTapeextendsMedia{
privateStringautor;//出厂厂家
publicStringgetautor(){
returnautor;
}
publicvoidsetautor(Stringautor){
this.autor=autor;
}
}
2)、3个子类的函数定义:
CompactDisk类:
packagemedea1;
publicclassCompactDiskMain{
publicCompactDiskgetCompactDiskByKey(CompactDisk[]CompactDiskb,CompactDisksearchc){
for(CompactDiskcompactDisk:
CompactDiskb){
if(compactDisk==null){
continue;
}
if(compactDisk.getname().equals(searchc.getname())){
returncompactDisk;
}
if(compactDisk.gettype().equals(searchc.gettype())){
returncompactDisk;
}
if(compactDisk.getprice()==searchc.getprice()){
returncompactDisk;
}
if(compactDisk.getsize()==searchc.getsize()){
returncompactDisk;
}
}
returnnull;
}
publicbooleanadd(CompactDisk[]CompactDiskb,CompactDiskaddP){
for(inti=0;iif(CompactDiskb[i]==null){
CompactDiskb[i]=addP;
returntrue;
}
}
returnfalse;
}
publicbooleandelete(CompactDisk[]CompactDiskb,Stringname){
for(inti=0;iif(CompactDiskb[i].getname().equals(name)){
CompactDiskb[i]=null;
returntrue;
}
}
returnfalse;
}
publicBookgetBookByKey(CompactDisk[]compactDiskb,CompactDisksearchb){
//TODOAuto-generatedmethodstub
returnnull;
}
}
Book类
packagemedea1;
publicclassBookMain{
publicBookgetBookByKey(Book[]Bookb,Bookp){
for(Bookbook:
Bookb){
if(book==null){
continue;
}
if(book.getname().equals(p.getname())){
returnbook;
}
if(book.gettype().equals(p.gettype())){
returnbook;
}
if(book.getprice()==p.getprice()){
returnbook;
}
if(book.getweight()==p.getweight()){
returnbook;
}
}
returnnull;
}
publicbooleanadd(Book[]Bookb,BookaddP){
for(inti=0;i if(Bookb[i]==null){
Bookb[i]=addP;
returntrue;
}
}
returnfalse;
}
publicbooleandelete(Book[]Bookbb,Stringname){
for(inti=0;i if(Bookbb[i].getname().equals(name)){
Bookbb[i]=null;
returntrue;
}
}
returnfalse;
}
}
Tape类
packagemedea1;
publicclassTapeMain{
publicTapegetTapeByKey(Tape[]Tapeb,Tapep){
for(Tapetape:
Tapeb){
if(tape==null){
continue;
}
if(tape.getname().equals(p.getname())){
returntape;
}
if(tape.gettype().equals(p.gettype())){
returntape;
}
if(tape.getprice()==p.getprice()){
returntape;
}
if(tape.getautor()==p.getautor()){
returntape;
}
}
returnnull;
}
publicbooleanadd(Tape[]Tapeb,TapeaddP){
for(inti=0;iif(Tapeb[i]==null){
Tapeb[i]=addP;
returntrue;
}
}
returnfalse;
}
publicbooleandelete(Tape[]Tapeb,Stringname){
for(inti=0;iif(Tapeb[i].getname().equals(name)){
Tapeb[i]=null;
returntrue;
}
}
returnfalse;
}
}
3)、主函数编写:
packagemedea1;
importjava.io.IOException;
importjava.util.Scanner;
publicclassMediaMain{
privatestaticfinalCompactDiskSearchc=null;
privatestaticfinalTape[]Tapeb=null;
publicMediagetMediabykey(Media[]Mediab,Mediap){
for(Mediamedia:
Mediab){
if(media==null){
continue;
}
if(media.getname().equals(p.getname())){
returnmedia;
}
if(media.gettype(