我在学校的课程上遇到了一些麻烦。
我必须通过factorial
类中名为FactorialCalculator
的方法在我的factorial
类中调用名为BCD
的方法。通常情况下,我会做这样的事情:
FactorialCalculator newCalc = new FactorialCalculator(8);
但是,factorial
是FactorialCalculator
类中唯一的方法,我不允许再制作任何方法,包括构造函数。
有什么建议吗?
答案 0 :(得分:9)
将其创建为静态方法:
public class FactorialCalculator {
public static int factorial(int number) {
// Calculate factorial of number
}
}
你可以这样称呼它:
int factorial = FactorialCalculator.factorial(5); // for the example
静态方法是一种与任何类的任何实例都无关的方法,&可以使用 Classname.staticMethod()表示法访问它。
答案 1 :(得分:3)
很简单,如果你成功Static
,你就可以从另一个班级调用它。
将其创建为静态方法:
class FactorialCalculator {
public static int factorial(int number) {
...YourCode...
}
}
你可以这样称呼它:
int number = 10;
int f = FactorialCalculator.factorial(number);
答案 2 :(得分:1)
如果是静态方法,则执行FactorialCalculator.factorial(...)
。
答案 3 :(得分:1)
您可以使用默认构造函数,它只是FactorialCalculator fc = new FactorialCalculator();
。很简单。但是,看起来您的老师希望您创建一个静态方法。静态方法有点像类的实用程序,而不是对象的函数。因此,在您的情况下,您应该使FactorialCalculator更多地是实用程序类而不是对象类。 public static int factorial(int num) {}
应该做到这一点。这样,您就可以像在示例中那样去FactorialCalculator.factorial(5)
。
希望这有帮助!
答案 4 :(得分:1)
首先,您始终拥有标准构造函数,该构造函数不带参数。因此,您可以实例化 FactorialCalculator ,然后调用其 factoral -Method。