实验3 面向对象编程的练习1.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:5 大小:95KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

实验3 面向对象编程的练习1.doc

实验3面向对象编程的练习1.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

实验名称面向对象编程的练习实验要求通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想,了解类的封装方法,以及如何创建类和对象,了解成员变量和成员方法的特性,掌握OOP方式进行程序设计的方法,了解类的继承性和多态性的作用。实验内容(一)创建Applet应用小程序1.创建一个Applet应用程序SY3_1.java文件。(1)程序功能:建立一个Applet小程序,用户在文本框输入姓名并按Enter键后,在窗体上直接输出欢迎信息,并且设置了字体和颜色,单击【清除】按钮,文本框和窗体上的内容都将被清除。该程序要包含类、接口、属性、方法、事件等面向对象的基本元素。体现面向对象思想(2)程序源代码如下2.编写一个浏览Applet应用程序的页面文件SY3_1.HTML,源代码如。<html><appletcode="SY3_1.class"width=500height=500></applet></html>3.将MyJavaApplet.java源程序编译为SY3_1.class文件。4.使用浏览器或使用小程序查看器浏览SY3_1.HTML文件(即在命令提示符窗口输入:appletviewerSY3_1.HTML),运行。(二)使用修饰符有时需要公开一些变量和方法,有时需要禁止其他对象使用变量和方法,这时可以使用修饰符来实现这个目的。常用的修饰符如下。Public,private,protected,package,static,final,transient,volatile1.程序功能:通过两个类StaticDemo、SY3_2说明静态变量/方法与实例变量/方法的区别。2.编写类文件SY3_2.java,程序源代码如下。(三)方法中参数传递的练习1.编写一个传值调用的程序文件SY3_3java。(1)程序功能:程序首先给整型变量赋一个初值,然后使用传值调用方式调用方法,最后输出结果(2)程序源代码如下。(3)编译SY3_3.java(4)分析其运行结果2.编写一个调用对象方法的程序文件SY3_4.java。(1)程序功能:通过调用对象的方法在方法调用后修改了成员变量的值。(2)SY3_4.java程序源代码如下。(3)编译SY3_4.java(4)以上两个实验例子仅仅是为了说明Java编程中参数传递时要注意的问题,在实际编程中是不可取的,因为完全可以采用其它更好的方法来实现参数的传递。例如,前面还使用过传递对象的方式。思考:方法的参数传递有哪些方式?区别时什么?(四)类的继承性练习创建超类Cuboid(长方体),其成员hight、width、length和计算该长方体体积的方法volume()。创建类CuboidWeight继承Cuboid,添加新成员density(密度)和计算该长方体重量的方法weight()。创建类CuboidValue继承CuboidWeight,添加新成员value和计算价格的方法cost()。创建类InfoCuboid,该类包含main方法,创建类对象输出该对象(长方体)的体积重量和价值。(五)多态性练习1.理解类的多态性类的继承发生在多个类之间,而类的多态只发生在同一个类上。在一个类中,可以定义多个同名的方法,只要确定它们的参数个数和类型不同。这种现象称为类的多态。多态使程序简洁,为程序员带来很大便利。在OOP中,当程序要实现多个相近的功能时,就给相应的方法起一个共同的名字,用不同的参数代表不同的功能。这样,在使用方法时不论传递什么参数,只要能被程序识别就可以得到确定的结果。类的多态性体现在方法的重载(overload)上,包括成员方法和构造方法的重载。2.方法的重载方法的重载是指对同名方法的不同使用方式。◆在(四)类的继承性中,修改InfoCuboid类,尽量体现出多态性,具体在程序代码中用注释的形式标注出来。思考题:1.说明方法覆盖和方法重载的区别。2.说明什么是构造方法的特征。3.对象引用的多态性的优缺点各是什么。实验小结