这个小问题麻烦大家了!

girllovecompter 2010-04-06 08:51:04
class Trangle{
double sideA,sideB,sideC,area,length;
boolean boo;
public Trangle(double a,double b,double c)
{
sideA=a;sideB=b;sideC=c;
if((a+b)>c&&(b+c)>a&&(a+c)>b)
{
boo=true;
}
else{
boo=false;
}
}
double getLength(){
length=sideA+sideB+sideC;
return length;
}
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,double b,double c){
sideA=a;sideB=b;sideC=c;
if((a+b)>c&&(b+c)>a&&(a+c)>b)
{
boo=true;
}
else{
boo=false;
}
}
}
class Lader{
double above,bottom,height,area;
Lader(double a,double b,double h){
above=a;bottom=b;height=h;
double getArea() //不明白为什么这句会报错,有问题!
{
area=(a+b)*h/2;
return area;
}
}
}
class Circle{
double radius,area;
Circle(double r){
radius=r;
}
double getArea(){
area=3.14*r*r;
return area;
}
double getLength(){
length=3.14*2*r;
return length;
}

}
public class AreaAndLength{

public static void main(String args[]){
double length,area;
Circle circle=null;
Trangle trangle;
Lader lader;
circle(5.0);
trangle(3.0,4.0,5.0);
lader(1.0,2.0,3.0);
length=circle.getLength;
System.out.println("圆的周长:"+length);
area=circle.getArea;
System.out.println("圆的面积:"+area);
length=trangle.getlength;
System.out.println("三角形的周长:"+length);
area=trangle.getArea;
System.out.println("三角形的面积:"+area);
area=lader.getArea;
System.out.println("梯形的面积:"+area);
setABC(12.0,34.0,1.0);
area=trangle.getArea;
System.out.println("三角形的面积:"+area);
length=trangle.getLength;
System.out.println("三角形的周长:"+length);

}
}
...全文
92 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
JavaAlpha 2010-04-06
  • 打赏
  • 举报
回复
Lader(double a,double b,double h){
above=a;bottom=b;height=h;
double getArea() //不明白为什么这句会报错,有问题!

Lader 这是已经是方法了,里面不允许你再写方法的,所以就报错了。
WPooh 2010-04-06
  • 打赏
  • 举报
回复
你的错误不止一处。
1.你把double getArea()写到了Lader(double a,double b,double h)函数里头。
2.class Lader中把area=(a+b)*h/2;改成area=(above+bottom)*height/2;
3.class Circle中把area=3.14*r*r;改成area=3.14*radius*radius;把length=3.14*2*r;改成length=3.14*2*radius;而且length使用没有定义。
4.public class AreaAndLength中定义对象应该是这样:
Circle circle=new Circle(5.0);
Trangle trangle=new Trangle(3.0,4.0,5.0);
Lader lader=new Lader(1.0,2.0,3.0);
5.getLength,getArea是函数,需要在后面加上()
6.setABC(12.0,34.0,1.0);应该由对象调用trangle.setABC(12.0,34.0,1.0);
girllovecompter 2010-04-06
  • 打赏
  • 举报
回复
double getArea() //不明白为什么这句会报错,有问题!本人新手,很想弄明白是为什么!

50,528

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧