实验三类与对象、继承
【目的】
①使用类来封装对象的属性和功能;
②掌握类变量与实例变量,以及类方法与实例方法的区别;
③掌握使用package和import语句。
④巩固以下概念:
子类的继承性
子类对象的创建过程
成员变量的继承与隐藏
方法的继承与重写
【内容】
、梯形和圆形的类封装
实验要求:
编写一个Java应用程序,该程序中有3个类:Trangle、Leder和Circle,分别用来刻画“三角形”、“梯形”和“圆形”。具体要求如下:
a) Trangle类具有类型为double的三个边,以及周长、面积属性,Trangle类具有返回周长、面积以及修改三个边的功能。另外,Trangle类还具有一个boolean型的属性,该属性用来判断三个属能否构成一个三角形。
b) Lader类具有类型double的上底、下底、高、面积属性,具有返回面积的功能。
c) Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能。
程序:
class Trangle
{
double sideA,sideB,sideC,area,length;
boolean boo;
public Trangle(double a,double b,double c)
{
sideA=a; //参数a,b,c分别赋值给sideA,sideB,sideC
sideB=b;
sideC=c;
if((sideA+sideB)>sideC||(sideA+sideC)>sideB||(sideB+sideC)>sideA) //a,b,c构成三角形的条件表达式
{
boo=true; //给boo赋值。
}
else
{
boo=false; //给boo赋值。
}
}
double getLength()
{
double length=sideA+sideB+sideC; //方法体,要求计算出length的值并返回
return length;
}
public double getArea()
{
if(boo)
{
double p=(sideA+sideB+sideC)/;
area=(p*(p-sideA)*(p-sideB)*(p-sideC)) ;
return area;
}
else
{
("不是一个三角形,不能计算面积");
return 0;
}
}
public void setABC(double a,double b,double c)
{
sideA=a; //参数a,b,c分别赋值给sideA,sideB,sideC
sideB=b;
sideC=c;
if((sideA+sideB)>sideC||(sideA+sideC)>sideB||(sideB+sideC)>sideA) //a,b,c构成三角形的条件表达式
{
boo=true; //给boo赋值。
}
else
{
boo=false; //给boo赋值。
}
}
}
class Lader
{
double above,bottom,height,area;
Lader(double a,double b,double h)
{
above=a; //方法体,将参数a,b,c分别赋值给above,bottom,height
bottom=b;
height=h;
}
double getArea()
{
double area=(above+bottom)*height/2; //方法体,,要求计算出area返回
return area;
}
}
class Circle
{
double radius,area;
Circle(double r)
{
radius=r; //方法体
}
double getArea()
{ double pi=;
double area=pi*radius*radius; //方法体,要求计算出area返回
return area;
}
double getLength()
{
double pi=;
double length=pi*radius*2;
Java实验三 来自淘豆网m.daumloan.com转载请标明出处.