我真的希望有人能帮助我,因为我已经坐下来研究这个问题几个小时了,我认为这只是缺少一个细节......但不确定。
我定义了一个三角形类,它应该采用 3 个 (x,y) 坐标,并从中计算边长、角和面积。该类如下所示:
public class Triangle {
private double x1, x2, x3, y1, y2, y3;
double sideA, sideB, sideC;
private double angleA, angleB, angleC;
public Triangle(double x1, double y1, double x2,
double y2, double x3, double y3) {
}
public double getSideA() {
return (Math.sqrt(Math.pow((x3-x2),2)+Math.pow((y3-y2),2)));
}
}
现在我想在 Interaction 类中调用 getSideA 方法。我已经定义了坐标变量,它们从扫描方法中获取它们的值。我还定义了一个变量 sideA,我想从 getSideA 方法中获取值。我就是这样做的:
Triangle userTriangle = new Triangle(x1, x2, x3, y1, y2, y3);
userTriangle.getSideA = sideA;
当我尝试编译 Interaction 类时,出现以下错误代码:
Interaction.java:79: cannot find symbol
symbol : variable getSideA
location: class Triangle
userTriangle.getSideA = sideA;
^
知道我做错了什么吗?
最佳答案
赋值和函数调用执行不正确。
sideA = userTriangle.getSideA();
^parens necessary when calling function
<---------- (value assigned from right to left)
分配从右到左进行。
<小时/>此外,您的类中的私有(private)变量未设置。你最终不会得到预期的结果。使用
在构造函数中设置实例变量this.<pvt_var> = value_passed_to_constructor;
关于java - 如何在类中定义java方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13331862/