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