---恢复内容开始---
题目如下:
[实验任务一]:面积计算(设计型)。
1、 实验要求:
实验报告中要求包括程序设计思想、程序流程图、源代码、运行结果截图、编译错误分
析等内容。
2、实验内容:
(1)设计一个形状类 Shape,包含一个 getArea()方法,该方法不包含实际语句。
(2)在 Shape 类基础上设计圆形、矩形、三角形和梯形四个子类,要求根据实际形状重
写 getArea()方法。
(3)设计一个 TestShape 类,包含变量 area(存储总面积)、静态方法 countArea(Shape s),
该方法负责把参数中的形状面积加入到 area 中。在 main 函数中新建(2)中四种类型的对象
s1、s2、s3、s4,通过调用 countArea 方法把四个对象面积累加到 area 中,最后输出 area。
[实验任务二]:抽象类和接口的设计(设计型)。
1、 实验要求:
(1)能实现抽象类的继承关系;
(2)程序应包括各个被调用方法的执行结果的显示。
(3)写出实验报告。要求记录编译和执行 Java 程序当中的系统错误信息提示,
并给出解决办法。(附运行界面、源代码)。
2、 实验内容:
(1) 定义抽象类 Shape,抽象方法为 showArea(),求出面积并显示,定义矩形
类 Rectangle,正方形类 Square,圆类 Circle,根据各自的属性,用 showArea
方法求出各自的面积,在 main 方法中构造 3 个对象,调用 showArea 方法。
(2) 定义接口 DiagArea,其中包含方法 double getDiagonal()求对角线长, double
getArea()求面积,定义一个矩形类,实现此接口,并自行扩充成员变量和
方法,定义一个正方形类继承矩形类(如矩形有长 w 和宽 h,正方形有边
x,并有相应的构造函数,有一个方法中一次直接显示边长、面积和对角线
长),在另一类中的主方法里使用测试该类。
[实验任务三]:班级信息管理类设计(设计综合型实验)
1、 实验要求:
(1)能实现类的继承关系;
(2)用多种方法创建各个类的对象;
(3)程序应包括各个被调用方法的执行结果的显示。
(4)写出实验报告。要求记录编译和执行 Java 程序当中的系统错误信息提示,
并给出解决办法。(附运行界面、源代码)。
2、 实验内容:
(1)定义一个描述人的基本类,该类包括人的性别和出生日期两个数据成员,
以及设置和获取这些属性值的方法成员;
(2)再定义一个大学生类,使大学生类具有人的所有属性外,还具有姓名、学
号,大学入学成绩,籍贯属性以及设置和获取这些属性值的方法成员;编写完整的程
序,完成一个具有班级学生信息管理功能的程序。
[实验任务四]:按照题目要求设计并编写一个 JAVA 程序(综合设计型)
1、 实验要求:
(1) 能实现类的继承关系;
(2) 用多种方法创建各个类的对象;
(3)程序应包括各个被调用方法的执行结果的显示。
(4)写出实验报告。要求记录编译和执行 Java 程序当中的系统错误信息提示,并
给出解决办法。(附运行界面、源代码)。
2、实验内容:学校中有老师和学生两类人,而在职研究生既是老师又是学生,对学
生的管理和对教师的管理在他们身上都有体现。
(1)设计两个信息管理接口 StudentManageInterface 和 TeacherManageInterface。其中,
StudentInterface 接口包括 setFee()方法和 getFee()方法,分别用于设置和获取学生的学费;
TeacherInterface 接口包括 setPay()方法和 getPay()方法,分别用于设置和获取教师的工资
(2)定义一个研究生类 Graduate,实现 StudentInterface 接口和 TeacherInterface 接口,它定
义的成员变量有 name(姓名)、sex(性别)、age(年龄)、fee(每学期学费)、pay(月工资)。
创建一个姓名为“zhangsan”的研究生,统计他的年收入和学费,如果收入减去学费不足
2000 元,则输出“provide a loan”(需要贷款)信息。
(3)提示:
①定义两个接口,分别在其中申明两个方法。
②定义主类 Graduate,实现这两个接口。
③ 定义主类的成员变量,和构造方法。
④ 给出四个接口方法的实现。
⑤ 给出一个计算是否需要贷款的方法,在里面统计年收入和学费,并输出
是否需要贷款的信息。
⑥ 写 main 方法。在其中创建一个姓名为“zhangsan”的研究生,调用计算是
否需要贷款的方法。
下面是实验结果:
设计思想:
通过java之间对类的继承的了解,及其对接口和抽象类的定义,使用,来完成本节课的实验练习,并且通过练习掌握其中的技巧,熟练运用这些定义,来完成本节课的实验
源程序:
实验一:面积计算
//MainTest.java
package shape; //洪鼎淇 信1705-3 20173627 public class MainTest { public static void main(String[] args) { // TODO 自动生成的方法存根 Circle s1=new Circle(3); Triangle s2=new Triangle(3,3); Juxing s3=new Juxing(3,3); Tixing s4=new Tixing(2,3,4); System.out.println(TestShape.countArea(s1)); System.out.println(TestShape.countArea(s2)); System.out.println(TestShape.countArea(s3)); System.out.println(TestShape.countArea(s4)); } }
//Shape.java
package shape; public abstract class Shape { public abstract double getArea(); } class Circle extends Shape { final double PI=3.1415926; private double x; public Circle(double bian) { x=bian; } public double getArea() { return x*x*PI; } } class Triangle extends Shape { private double width,height; public Triangle(double bian,double gao) { width=bian; height=gao; } public double getArea() { return width*height/2; } } class Juxing extends Shape { private double width,height; public Juxing(double bian,double gao) { width=bian; height=gao; } public double getArea() { return width*height; } } class Tixing extends Shape { private double width1,width2,height; public Tixing(double bian1,double bian2,