1、实验二 面向对象的编程技术实验时间指导老师评议成绩评定:(满分为2分)指导教师评语:指导教师签名:实验内容(要求、算法、步骤和方法) 请参见 实验说明书实 验结果具体代码请参见附件中电子版的java源程序。源程序的简要说明如下:-Java实验:实验五 包、接口、类库TestPackage.java 说明:包的创建和引用。结果如图:TestInterface.java创建接口Speakable和Runner,然后创建两个类Dog和Person实现该接口。运行上面的程序,思考如下的问题:(1)该程序编译后生成几个字节码文件?(2)创建一个类Bird(鸟),给出其声音特征,并在主类中创建一个Bird
2、类的实例,输出其特征。(3)如何编写抽象类代替程序中的接口,实现程序同样的功能。试比较它们的不同。答:(1)生成五个字节码文件(2)程序结果如图:(3)程序结果如图:接口没有执行方法,没有执行函数,但是类有。InterfaceDemo.java创建一个名称为Vehicle的接口,在接口中添加两个带有一个参数的方法start()和stop()。在两个名称分别为Bike和Bus的类中实现Vehicle接口。创建一个名称为interfaceDemo的类,在interfaceDemo的main()方法中创建Bike和Bus对象,并访问start()和stopt()方法。结果如图:DemoPackage
3、.java创建一个名称为MainPackage的包,使它包含ParentClass和SubClass。ParentClass包含变量声明,其值从构造函数中输出。SubClass类从父类派生而来,完成对父类变量的赋值。创建一个名称为DemoPackage的主类,使它不在MainPackage包中,在该类中创建一个SubClass类的对象。实验六 异常处理CatchDemo.java编写一个程序,同时捕获数组越界和被0除的异常,说明异常处理语句try-catch-finally的处理机制。(3)结果如图:(5)结果如图:(6)结果如图:TextException.java创建用户自定义异常,用于描
4、述数据取值范围的错误信息。(1)throw语句用在方法体内,表示抛出异常,由方法体内的语句处理;是具体向外抛异常的动作,所以它是抛出一个异常实例。throws语句用在方法声明后面,表示再抛出异常,由该方法的调用者来处理。(2)用户自定义UserException语句,来自定义异常。(3)利用程序中的try、catch等语句来处理程序中用户的自定义异常。(4)结果如图:ChangeToNumber.java编写一个程序,将字符串转换成数字。请使用try-catch-finally语句处理转换过程中可能出现的异常。UML实验:实验一 UML建模基础first.mdl -1)练习使用建模工具建立各种
5、UML图形,并对图形进行相应编辑和修改。2)认识各种UML关系及可见性符号,并用工具表示出来。实验二 UML类图(1)简述类的定义,以及类的三要素(2)类的属性和方法的可见性有哪些?UML中如何表示?(3)已知三个类A.B和C.其中类A由类B的一个实类和类C的1个或多个实类构成.请画出能够正确表示类A,B和C之间关系的UML类图. (4)根据以下描述画出类图,并注明多重性关系:一个学生可以选修多门课程,也可能没有任何课程;一门课程可以被多个学生选修;一个老师可以教多门课程或者不教课;每门课程至少有一个老师,也可以有多个老师任教;每门课程可以有0或1本教材,每本教材只能用于一门课程。(5)现有一
6、系统需要对商品进行管理,包括添加,删除商品,修改商品信息三项功能,画出系统类图。(商品信息包括商品编号,商品名称,价格,生产厂商等)(6)如果现在系统需求发生变化,需要能够对损坏商品进行打折,以及可以按照商品的颜色和外形进行查询,则系统类图应该如何修改?(7)根据下面的代码画出Invoice类的类图,要求标明各属性的类型和可见性以及类方法。public class Invoicepublic double amount;public Date date = new Date();public string customer;public string specification;public
7、string administrator = “unspecified”;static private int number_of_invoices()=0;public invoice(); number_of_invoices+;public void print() System.out.println(The number of invoices is”+ int number_of_invoices);(8)下图是一个仓库管理系统的类模型局部,其中IncomeOrder是指入库单,OrderItem是指入库中的每一项,Product则是产品信息。请指出模型中的错误,说明原因并改正类图
8、。(1)类是对一组具有相同属性、操作、关系和语义事物的描述。类的三要素是:类的名称、属性、操作。(2)类的属性和方法的可见性有protect(符号“#”),private(符号“-”),public(符号“+”)(5)(6)(7)结果如图:(8)结果如图:实 验 心 得 体 会1实验中遇到的问题以及解决方法1)在第二次实验时,由于对JAVA的包和接口以及异常处理还很陌生,所以在实验过程中不知如何下手,经过请教同学,询问助教,终于明白了各种操作的意义。2)之后的几次实验中要用到一些包,但是自己并不明白各个包内的函数实现的功能,通过查找资料和询问同学,终于基本学会使用了。3)学习有时会遇到不明白的地方,通过网上查询获得了更清晰详细的解释,更加深了自己对知识的理解。2实验体会在这一系列的实验中,我基本掌握了Java的编程规则、知识要点和一些小技巧,特别是对而向对象的编程思想和风格有了进一步的认识和体会。在UML建模的过程中,同时,因正确的编出程序而带来的成就感让我对编程更加感兴趣。在这些实验过程中,请教老师、同学互助、查阅资料等基本的学习方式,使我更加领悟到集体和团队的力量,也树立了敢于攻坚的信心。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1