好的,我有一个家庭作业,我很难调用另一个类中的主类的方法。
基本上,“test”方法在landenclosure.java类中,我试图在我的主类landandeat.java上调用它
它们都在同一个包中:
形象
这是我试图调用该方法的主类:
public class landAndEat {
public static void main(String[] args) {
test();
} //end class
} //end main
这是创建方法的类:
import java.util.Scanner;
public class landEnclosure {
public void test() {
double area, ratioA = 0, ratioB = 0, x, l, w, perimeter;
Scanner input = new Scanner(System.in);
System.out.println("What area do you need for your enclosure in square feet?");
area = input.nextDouble();
if( area > 0 && area <= 1000000000) { //Input specification 1
System.out.println("What is the ratio of the length to the width of your enclosure?");
ratioA = input.nextDouble();
ratioB = input.nextDouble();
}
else
System.out.println("It needs to be a positive number less than or equal to 1,000,000,000!");
if(ratioA > 0 && ratioA < 100 && ratioB > 0 && ratioB < 100) { //Input specification 2
x = Math.sqrt(area/(ratioA*ratioB));
l = ratioA * x;
w = ratioB * x;
perimeter = (2 * l) + (2* w);
System.out.println("Your enclosure has dimensions");
System.out.printf("%.2f feet by %.2f feet.\n", l, w);
System.out.println("You will need " + perimeter + " feet of fence total");
}
else
System.out.println("The ratio needs to be a positive number!");
}
} //end class
2条答案
按热度按时间qxsslcnc1#
在java中,唯一顶级的“东西”是类(以及类似的东西,如接口和枚举)。功能不是顶级的“东西”。它们只能存在于类中。因此,要调用它,您需要遍历该类,或者遍历该类的对象。
从您编写的代码来看,test似乎是一种非静态方法。在这种情况下,您需要从该类创建一个对象,并在其上运行该方法:
然而,您的意图似乎是让“测试”成为一种静态方法。在这种情况下,将其声明为静态,并以这种方式调用:
另一方面,java中的惯例是先用大写字母命名类:
avkwfej42#
除了创建新示例的明显建议之外
landEnclosure
,你也可以function
static
并致电: