在eclipse中运行错误,找不到或无法加载主类,环境变量没有错
这是程序,就定义一个三角形类importjava.awt.Point;importjava.lang.Math;classTriangle{privatePointpoi...
这是程序,就定义一个三角形类
import java.awt.Point;import java.lang.Math;class Triangle { private Point point1; private Point point2; private Point point3; public Triangle(Point a,Point b,Point c){ point1=a; point2=b; point3=c; } public double area(){ double a,b,c; a=point1.distance(point2); b=point1.distance(point3); c=point3.distance(point3); double s=(a+b+c)/2; return (Math.sqrt(s*(s-a)*(s-b)*(s-c))); }
}public class TestTriangle { public static void main (String[] args) { Point a=new Point(3,5); Point b=new Point(10,8); Point c=new Point(20,36); Triangle t=new Triangle(a,b,c); System.out.println("the area of the triangle is"+t.area()); double s=(2.5+3.5+4)/2; double area=Math.sqrt(s*(s-2.5)*(s-3.5)*(s-4)); System.out.println("the area of the given triangle(3.5,2.5,5) is"+area); }}
其他程序运行的时候都没有错,就这个出错了,改了半天也不对
这是环境变量:
classpath: .;C:\Program Files(x86)\Java\jdk1.7.0\lib;
JAVA_HOME:C:\Program Files (x86)\Java\jdk1.7.0
Path:C:\Program Files(x86)\Java\jdk1.7.0\bin;%java_home%\jre\bin;
现在程序能运行了,但是结果有问题了
运行到 Triangle t=new Triangle(a,b,c);变成这样了
希望各位大神看看,本人刚接触java菜鸟一个,一个小程序都3天没对了 展开
import java.awt.Point;import java.lang.Math;class Triangle { private Point point1; private Point point2; private Point point3; public Triangle(Point a,Point b,Point c){ point1=a; point2=b; point3=c; } public double area(){ double a,b,c; a=point1.distance(point2); b=point1.distance(point3); c=point3.distance(point3); double s=(a+b+c)/2; return (Math.sqrt(s*(s-a)*(s-b)*(s-c))); }
}public class TestTriangle { public static void main (String[] args) { Point a=new Point(3,5); Point b=new Point(10,8); Point c=new Point(20,36); Triangle t=new Triangle(a,b,c); System.out.println("the area of the triangle is"+t.area()); double s=(2.5+3.5+4)/2; double area=Math.sqrt(s*(s-2.5)*(s-3.5)*(s-4)); System.out.println("the area of the given triangle(3.5,2.5,5) is"+area); }}
其他程序运行的时候都没有错,就这个出错了,改了半天也不对
这是环境变量:
classpath: .;C:\Program Files(x86)\Java\jdk1.7.0\lib;
JAVA_HOME:C:\Program Files (x86)\Java\jdk1.7.0
Path:C:\Program Files(x86)\Java\jdk1.7.0\bin;%java_home%\jre\bin;
现在程序能运行了,但是结果有问题了
运行到 Triangle t=new Triangle(a,b,c);变成这样了
希望各位大神看看,本人刚接触java菜鸟一个,一个小程序都3天没对了 展开
5个回答
展开全部
你可以看看classpath,path,java_home 到底是干啥的,其实你只需要配置一个path,就够了,
你的path中的 C:\Program Files(x86)\Java\jdk1.7.0\bin;和 %java_home%\jre\bin; 重复了,
建议最好 把 %java_home%\jre\bin; 去掉;
另外还是给你说说 path 是 你编写的程序运行时,电脑回去你的 path变量找到 你的jdk所在的位置
classPath 是 你编写完程序,编译的时候,电脑找你编写的程序所在的位置
另外 你的程序 我试过 可以运行,如果你觉得你的结果不对,那可能就是你的 业务逻辑出现问题
你的path中的 C:\Program Files(x86)\Java\jdk1.7.0\bin;和 %java_home%\jre\bin; 重复了,
建议最好 把 %java_home%\jre\bin; 去掉;
另外还是给你说说 path 是 你编写的程序运行时,电脑回去你的 path变量找到 你的jdk所在的位置
classPath 是 你编写完程序,编译的时候,电脑找你编写的程序所在的位置
另外 你的程序 我试过 可以运行,如果你觉得你的结果不对,那可能就是你的 业务逻辑出现问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c=point3.distance(point3); 不知道这是不是你的原意,这个为0,导致计算s-c为负数,计算
Math.sqrt(s*(s-a)*(s-b)*(s-c))的时候出错。
Math.sqrt(s*(s-a)*(s-b)*(s-c))的时候出错。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这.java的文件名是什么?
追问
TestTriangle.java
追答
Eclipse上可不是这么说啊,那行小字是Triangle.TestTriangle,主类是Triangle。我估计是中间你曾改动过文件名等,把Eclipse给搞糊涂了。用Project/clean...清空了重新编译一遍吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
要将Triangle类声明为private权限才可以
追问
默认权限不可以么?老师上课的课件都是默认的
追答
你可以上机试一试。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询