使用另一个类的方法

时间:2015-10-17 21:10:42

标签: java class methods

我正在研究一个程序,它调用另一个类的方法,我似乎无法超越那个道路颠簸。我正在使用的示例只是在main方法中设置一个等于另一个类的变量,而我在我自己的程序中遇到的主要错误是我找不到的符号 - 我也是在这里查看了其他类似的问题,但我无法理解如何在我自己的程序中使用答案。

这是我的主要方法的一部分,名为MyTriangle:

do
  {
     System.out.print ("Enter the first of a triangle: ");
     side1 = scan.nextDouble();

     System.out.print ("Enter the second side of a triangle: ");
     side2 = scan.nextDouble();

     System.out.print ("Enter the third side of a triangle: ");
     side3 = scan.nextDouble();

     validity = isValid (side1, side2, side3);

     if (validity == true)
     {  
        System.out.println ("Area of the triangle is " + area);
     }

     if (validity == false)
     {
        System.out.println ("Invalid input");
     }   

     System.out.print ("\nContinue? <y/n> ");
     end = scan.next();

  } while (!end.equalsIgnoreCase("n"));

这是我的TestMyTriangle类的一部分:

public class TestMyTriangle
{

 public static double area (double side1, double side2, double side3)
 {
    double resultArea = 0;

    double sum = 0;

    sum = ((side1 + side2 + side3) / 2);

    resultArea = Math.sqrt(sum * ((sum - side1) * (sum - side2) * (sum -side3)));

    return resultArea;
 }        
}

我调用TestMyTriangle的方式与我正在使用的示例相同,但它仍然不起作用。如果有人能帮助我看到我所缺少的东西,我将不胜感激。

2 个答案:

答案 0 :(得分:2)

如果错误来自您发布的代码示例,我的赌注是您的isValid方法属于TestMyTriangle类。因此,为了调用isValid,您必须这样写:

validity = TestMyTriangle.isValid(side1, side2, side3);

同时确保在调用区域时,您也可以像这样引用该类:

System.out.println("Area of the triangle is " + TestMyTriangle.area(side1, side2, side3));

最后,如果您的两个文件不在同一目录中,请确保导入其他类文件,如下所示:

import path/to/directory/TestMyTriangle;
祝你好运!

答案 1 :(得分:1)

更改此行:

System.out.println ("Area of the triangle is " + area);

到此:

System.out.println ("Area of the triangle is " + TestMyTriangle.area(side1, side2, side3));