java面向对象编程实验报告.docx
《java面向对象编程实验报告.docx》由会员分享,可在线阅读,更多相关《java面向对象编程实验报告.docx(12页珍藏版)》请在冰豆网上搜索。
java面向对象编程实验报告
信息工程学院
Java程序设计实验/实习报告
学院:
信息工程学院
班级:
信息112
姓名:
吴连梅
学号:
成绩:
A
实验二面向对象编程
1.实验目的
(1)掌握类与对象基本知识;
(2)Java中的继承机制及包(package)、接口(interface)等的设计方法;
(3)掌握static、this、super等关键字的使用;
(4)掌握Java中两种比较器的用法。
2.实验内容
实验题1定义一个类Book,包含两个属性:
一个是private的String类型的属性title、一个是private的float类型的属性listPrice,封装这两个属性的四个方法setTitle()和getTitle()、setListPrice()和geListPrice()。
基本要求:
(1)设计类Book及类BookManagement,在类BookManagement中输出Book类的对象的两个private属性;
(2)重写父类的toString()方法,实现Book类实例的两个属性的输出。
实验过程:
新建工程后,在工程下面建立一个包Book,在包下再建立一个Book类,类中包含两个属性,一个是private的String类型的属性title、一个是private的float类型的属性listPrice,之后是封装这两个属性的四个方法,用快捷键Alt+Shift+S选择gennerateGettersandSetters,再然后就是重写父类的toString()方法,用快捷键Alt+Shift+S选择genneratetoString,快捷重写。
这段程序写完是这样的:
接下来便是BookManagement类,在包book下新建一个类BookManagement,
写完的程序是这样的:
BookManagement类中创建了书的对象,在主方法中调用output函数,赋值,输出。
程序写完后,将其存盘,再进行运行,得出的结果如下:
实验题2有两个类:
MobileManagement和Mobile,分别描述如图3.4所示两部手机名称及价格,类MobileManagement在包cn.edu.nwsuaf.jp.p3中,而Mobile在包cn.edu.nwsuaf.jp.p3.data中。
基本要求:
设计相关类,使程序能够显示两部手机的价格和数量,运行结果如图3.5。
E365,1780RMBM330,1450RMB
图3.4手机及价格图
图3.5运行结果
实验过程:
新建Mobile类,在类中定义成员变量name、price,自动生成构造方法,导入Get、Set方法用来访问私有变量,添加toString方法。
这个类中主要是创建Mobile类,生成类的构造方法,封装类。
MobileManagement类中,count是一个类变量,用来计算输出的电子产品个数。
下来是类方法output()
调用Mobile类,主方法中,给变量赋值,并写输出函数。
实验题3有四个类,主类Store在包cn.edu.nwsuaf.jp.p4中,Mobile、Mp3Player、Product在包cn.edu.nwsuaf.jp.p4.data中,Mobile、Mp3Player是Product的子类,Product类为抽象类。
基本要求:
设计类Mobile和类MP3Player,使它们和类Product、Store组成一个完整的程序,且运行结果如图3.6所示。
图3.6运行结果
这是包和类的简单关系图,不是程序流程图。
定义保护成员name、price、静态成员count用以计数。
封装类,给出成员的获取方法。
抽象类Product里参数name表示产品的名字,price表示产品的价格,count用来计数。
下来是类的构造方法。
这个类中提供了产品的信息。
这是Mp3Player类,类中写出了Mp3Player的相关信息。
重写了toString方法。
这是Mobile类,给出了手机的信息。
主类Store,在这个类中调用以上三个类,创建对象,提供产品信息,并在窗口中输出。
Stringtext="";
这句不明白什么作用,是向同学参考的。
本来是写着实验4的,但是不知道怎么,输出结果不对,就搬来用在实验三了。
实验题4有四个类,主类Store在包cn.edu.nwsuaf.jp.p4中,Mobile、Mp3Player、Product在包cn.edu.nwsuaf.jp.p4.data中,Mobile、Mp3Player是Product的子类,Product类实现Comparable接口,请重写Comparable接口中方法compareTo,实现product对象按照价格排序,运行结果如图3.8所示。
图3.7运行结果
主方法Store,给对象分配内存,并按价格高低排序输出。
Mobile类继承Product类,并有自己的num成员
这个实验的写法与实验三没多大差别主要添加了排序这一个内容,开始的时候,怎么也排不出来,输出时就按赋值的顺序给出,后来发现是compareTo方法写的有问题。
实验总结:
怎么说呢,一开始对编程就没什么基础,在学C的时候,就很迷茫,没好好学,就没学好。
接着数据结构、C++,越学越难,后来就慢慢的有了抗拒心理,觉得自己怎么也学不好,就越来越不想学了。
现在上课是一直听一直听,但就是好多听不懂,像鸭子听雷。
老师讲的很好,这是知道的,但没办法,基础真的太烂了额,好多听不懂,听了的也不理解,就越来越不懂了,看书也就能懂个皮毛。
课后也就照着课本上的例子或者老师的代码敲,熟悉一下程序的结构,但是,还没有特别懂。
稍微难一点的就看不懂了,只能小小的啃一点,懂一点。
Java和之前学的其他的程序不同,是多文件结构,看着能比较干净利落,思路比较清楚。
2013-05-16