JAVA 继承和多态实验报告 下载本文

内容发布更新时间 : 2024/5/20 23:45:40星期一 下面是文章的全部内容请认真阅读。

实验报告

(所属课程:

实验项目名称 : 继承和多态 Java语言程序设计 )

院 系: 专业班级: 姓 名: 学号: 实验地点: 指导老师:

1.实验目的

(1)掌握类的继承机制。

(2)熟悉类中成员变量和方法的访问控制。 (3)熟悉方法或构造方法多态性。 2.实验内容

(1)模拟编写程序,理解类的继承、多态、继承和多态规则。 (2)独立编程,实现类的继承和多态。 3.实验作业

设计一个类Shape(图形)包含求面积和周长的area()方法和perimeter()方法以及设置颜色的方法SetColor(),并利用Java多态技术设计其子类Circle(圆形)类、Rectangle(矩形)类和Triangle(三角形)类,并分别实现相应的求面积和求周长的方法。每个类都要覆盖toString方法。

海伦公式:三角形的面积等于s(s-a)(s-b)(s-c)的开方,其中s=(a+b+c)/2

程序代码为: Class包

package Class; public class Shape {

public Shape(String color){ }

public void setColor(String color){ }

public String getColor(){

1

本实验项目成绩: 教师签字: 日期:

private String color = \;

this.color = color;

this.color = color;

实验报告

return color;

}

public double getArea(){ return 0; }

public double getPerimeter(){ return 0; }

public String toString(){ return \ + color; }

}

package Class;

public class Circle extends Shape { private double radius;

public Circle(String color,double radius) { super(color);

this.radius = radius;

}

public void setRadius(double radius){ this.radius = radius;

}

public double getRadius(){ return radius;

}

public double getCircleArea(){ return 3.14*radius*radius;

}

public double getCirclePerimeter(){ return 3.14*2*radius;

}

2

实验报告

public String toString(){

return \ + getCircleArea()

+ \ + getCirclePerimeter();

}

}

package Class;

public class Rectangle extends Shape{ private double width; private double height;

public Rectangle(String color,double width,double height) { super(color); this.width = width; this.height = height;

}

public void setWidth(double width){ this.width = width;

}

public double getWidth(){ return width;

}

public void setHeight(double height){ this.height = height;

}

public double getHeight(){ return height;

}

public double getRectangleArea(){ return width*height;

}

public double getRectanglePerimeter(){ return 2*(width + height);

}

3