java代码哪里出错了啊
public class Triangle{ private double l; private double w; private double h; private double c; private double s; public Triangle(double l,double w,double h){ this.l=l; this.w=w; this.h=h; } public void setLong(double i){ this.i=i; } public double getLong(){ return this.i; } public void setWidth(double w){ this.w=w; } public double getWidth(){ return this.w; } public void setHeight(double h){ this.h=h; } public double getHeight(){ return this.h; } class double girth(double a,double b,double c){return a+b+c;class double acreage(double a,double b,double c){return sqrt(((a+b+c)/2*((a+b+c)/2-a)*((a+b+c)/2-b)*((a+b+c)/2-c)),0.5); } } public class TextTriangle{ public static void main(String[] args){ Triangle T=new Triangle(3,4,5); System.out.println("该三角形的周长是"+girth(T.l,T.w,T.h,T.c)); System.out.println("该三角形的面积是"+acreage(T.l,T.w,T.h,T.s)); } }
错的太离谱了,你的java根本没有入门且太粗心了
1。java的主类public,在一个文件中只能有一个(且必须是文件名),你有两个public类
这个是基础的基础
2. class double girth(double a,double b,double c){
class double acreage(double a,double b,double c){
不知你怎么想的,class作为函数前缀(应该是public),这个估计是粗心了
3. class double girth(double a,double b,double c)
{ return a+b+c; //这里少了 } ,又应该是粗心
4.return sqrt(((a+b+c)/2*((a+b+c)/2-a)*((a+b+c)/2-b)*((a+b+c)/2-c)),0.5);
应该是
return sqrt(((a+b+c)/2*((a+b+c)/2-a)*((a+b+c)/2-b)*((a+b+c)/2-c))); //sqlt在Math中的,不能直接用,且只有一个参数,估计你想的是0.5次方,一个数的0.5次方不就是开方?!
正确的
return Math.sqrt(((a+b+c)/2*((a+b+c)/2-a)*((a+b+c)/2-b)*((a+b+c)/2-c)));
5. this.i=i; //这个i是哪里来的???
6.System.out.println("该三角形的周长是"+girth(T.l,T.w,T.h,T.c));
这个girth是Triangle类中的,你能直接调用?
另外,l,h,c都是私有变量,不能访问的
。。。
还有,类里已有三边,求面积为什么还要三个参数?(这个是对数据结构没概念)
错的太多,实在不知你要做什么,都无法帮你修改了(把题目要求发上来,可以给你个参考)