本指导书为《Java程序设计》课程实验四提供详细的操作步骤与解答代码,旨在帮助学生加深理解并熟练掌握相关编程技能。
《Java程序设计》课程实验指导书(实验四:java继承与多态)
一、实验目的:
掌握继承及多态的概念与实现方法;理解包和接口的定义以及使用方式;了解JAVA语言中实现多重继承的方法。
二、实验内容:
1. 编写两个类Point2D和Point3D,分别表示二维空间点和三维空间点。具体要求如下:
- Point2D 类有两个整型成员变量x, y (代表坐标系中的X,Y轴),构造函数用于初始化这些变量。
- 定义一个void类型的方法offset(int a,int b)在Point2D类中,该方法可以实现二维平移操作。
- Point3D是Point2D的子类,它有三个整型成员变量x, y, z (代表坐标系中的X,Y,Z轴),构造函数用于初始化这些变量。其中包括一个接受两个参数(int x,int y)和另一个接收三个参数(int x,int y,int z)的构造方法。
- 在Point3D中定义void类型的方法offset(int a, int b, int c)实现三维平移操作。
- 编写主函数main(),在其中创建并初始化两个Point2D对象p2d1和p2d2,并打印它们之间的距离;再实例化两个Point3D的对象p3d1和p3d2,显示他们间的距离。
2. 定义抽象类Shape以及一个方法showArea()用于计算面积。接着定义Rectangle, Square 和 Circle 类来实现此接口并提供各自的属性与方法以求出其面积,在主函数main中创建这些对象,并调用相应的方法。另外还应该定义一个DiagArea 接口,包含获取对角线长度和面积的抽象方法;在矩形类里实现这个接口,同时有一个正方形类继承自该矩形类(具备边长、计算并显示面积及对角线长度的功能),最后在一个单独的方法中测试这些功能。
三、实验要求:
1. 实现不同类之间的继承关系。
2. 使用不同的方式创建各个对象实例。
3. 程序应展示所有被调用方法的执行结果。
4. 编写实验报告,记录编译和运行Java程序时遇到的问题及其解决方案,并附上界面截图及源代码。
四、实验步骤:
1. 定义Point2D类并实现其属性与方法;定义子类Point3D以及其实例化方式,在主函数main()中实例化两个Point2D对象,通过这些对象调用它们的属性和方法,并输出执行结果。
2. 创建抽象Shape类及其showArea() 方法。接着创建Rectangle, Square 和 Circle 类并实现各自的面积计算逻辑;在主程序里构造三个不同形状的对象,然后分别使用showArea() 方法来显示每个对象的面积值。
五、自选实验:
1. 设计一个表示人的基本属性(性别和出生日期)的类,并在此基础上创建一个大学生类,添加姓名、学号等额外的信息。编写完整的程序实现班级学生信息管理功能。
2. 创建接口Shape包含抽象方法area用于计算不同形状面积;定义Circle, Rectangle 类来具体化此接口,在主函数中根据随机数生成不同的对象实例,然后从Vector容器里取出这些元素,并判断其类型输出相应结果或调用特定的方法(如Star类的isStar() 方法)。
3. 设计两个信息管理接口StudentManageInterface 和 TeacherManageInterface;定义一个研究生类Graduate实现这两个接口并包含相应的属性和方法。创建实例,计算年收入与学费总额决定是否需要贷款。