实验三:Java面向对象程序设计(一)
实验目的
● 掌握类的定义; 掌握构造方法的使用;掌握对象的创建。
● 掌握静态变量与静态方法的使用;了解静态变量和成员变量的区别。 ● 熟悉访问修饰符的作用;掌握访问修饰符的使用方法。 ● 掌握方法的重载;掌握访问器get/set方法。
实验步骤
一、类和对象的创建
1. 创建一个圆类,成员变量有半径radius和圆周率pi,提供计算圆面积的方法,并在main方法中创建圆类的对象,调用其计算面积的方法进行测试。 2. 源代码如下:
3. 使用Eclipse开发工具,编写上述代码,编译运行代码,查看程序执行结果。 ● 试述程序中两个类的各自作用。
● 类Circle都封装了什么?求圆面积的初始数据是通过哪个方法实现的?请修改程序采用构造函数的方法初始化数据。
● 类Circle是如何声明的?在类中都声明了什么?在主函数中是如何创建Circle类对象的?
二、静态变量和静态方法的设计
(一). 静态变量和实例变量练习
1. 创建一个类,类名为StaticVariableTest,包含static变量和实例变量,类型为int型,在main方法中分别调用这2个变量并且输出结果。 2. 部分源代码如下:
3. 将上述代码中的main方法补充完整后,编译运行代码,查看程序执行结果。 ● 根据完善后的源码,分析调用静态变量和实例变量有什么不同? (二). 静态方法和实例方法练习
1. 创建一个类,类名为StaticMethodTest,包含一个静态方法和一个实例方法,在main方法中分别调用这个两个方法进行测试。 2. 部分源代码如下:
3. 将上述代码中的main函数补充完整,编译运行代码,查看程序执行结果。 ● 根据完善后的源码,分析如何调用静态方法和实例方法?
三、访问修饰符与方法的重载
(一). 访问修饰符练习
1. 创建一个Person类,在该类中用不同的访问修饰符设立不同的person属性,再创建一个PersonTest类,包括main方法,在此类中分别访问Person类中各个属性。
2. 源代码如下:
3. 先填写下面的表格,在预测结果中,如果能打印输出,填写程序输出结果,否则填“N”。 ● 记录程序运行结果。
表4-3-1 预测和验证结果
4. 使用Eclipse开发工具,编写上述代码,编译运行代码。在上表中填写程序验证结果。 ● 访问private变量时,编译会出现什么问题,为什么?
● 通过什么方式能访问private变量?编程实现访问Person类中的private变量。 (二). 方法重载练习
1. 给出一个OverloadTest类,并定义了一个amethod()方法,分析A)、B)、C)、D)和E)五个方法能否正确编译;
2. 源代码如下:
3. 使用Eclipse开发工具,编写上述代码,编译运行代码,查看程序执行结果。
● 根据程序执行结果分析类中A)、B)、C)、D)和E)五个方法哪些能编译,哪些不能编译,为什么?
实验四:面向对象的程序设计(二)
实验目的:
1. 2. 3. 4. 5. 6. 7. 8.
掌握类的继承、方法覆盖和变量的隐藏。 理解父类与子类的关系及创建方法。
掌握子类对象创建过程中与父类构造函数的关系。 了解抽象类与抽象方法。 掌握多态的实现机理及方法。 掌握接口的定义和使用 了解接口的设计方法 掌握包的定义和使用
实验步骤:
一. 继承类的访问修饰符练习
1. 定义一个父类,有不同访问级别的成员变量和方法; 2. 源代码如下:
3. 再定义一个子类,继承上面的父类,访问父类的成员变量和成员方法。 4. 子类源代码如下: