实验三类的继承与派生
实验目的
1. 掌握类及类的声明 2. 掌握对象的定义和使用 3. 掌握接口9的定义与实现
实验内容
1. 使用类来封装对象的属性和功能
编写一个Java程序,该程序中有3个类:Trangle、Lader和Circle,分别用来刻画“三角形”、“梯形”和“圆形”。具体要求如下:
Trangle类具有类型为double的三个边(sideA,sideB,sideC),以及周长(length)、面积(area)属性,Trangle类具有返回周长(getLength)、面积(getArea)以及修改三个边(setABC)的功能。另外还有一个boolean型的属性(boo),该属性用来判断三个数是否构成一个三角形。
Lader类具有类型为double的上底(above)、下底(bottom)、高(height)、面积(area)属性,具有返回面积(getArea)的功能。
Circle类具有类型为double的半径(radius)、周长(length)和面积(area)属性,具有返回周长(getLength)、面积(getArea)的功能。
把程序中的代码补充完整,并查看结果。 // Trangle.java
class Trangle//三角形 {
double sideA,sideB,sideC,area,length; boolean boo;
public Trangle(double a,doubleb,double c) {
//带参数的构造方法 setABC(a,b,c); }
double getLength() {
//方法体,要求计算出length的值并返回 【补充代码…仿照getArea()方法编写】
}
public double getArea() {
if(boo) {
double p=(sideA+sideB+sideC)/2.0;
area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC)) ; return area; } else {
System.out.println(\不是一个三角形,不能计算面积\ return 0; } }
public void setABC(double a,doubleb,double c) {
//参数a,b,c分别赋值给sideA,sideB,sideC 【补充代码…】
if(【补充代码】) //a,b,c构成三角形的条件表达式 {
【补充代码】 //给boo赋值。
}
else {
【补充代码】 //给boo赋值。
} } }
// Lader.java
class Lader//梯形 {
double above,bottom,height,area; Lader(double a,doubleb,double h) {
//带参数的构造方法,将参数a,b,h分别赋值给above,bottom,height 【补充代码…】 }
double getArea() {
//方法体,,要求计算出area返回 【补充代码…】 } }
// Circle.java
class Circle //圆形 {
double radius,area, length; Circle(double r) {
//带参数的构造方法 【补充代码】 }
double getArea() {
//方法体,要求计算出area返回 【补充代码…】 }
double getLength() {
//getArea方法体的代码,要求计算出length返回 【补充代码…】 }
void setRadius(double newRadius) {
radius=newRadius; }
double getRadius() {
return radius; } }
// AreaAndLength.java
public class AreaAndLength {
public static void main(String args[])