Java 如何从没有构造函数的另一个类调用方法
我在学校的一个节目上有点麻烦 我必须通过Java 如何从没有构造函数的另一个类调用方法,java,Java,我在学校的一个节目上有点麻烦 我必须通过BCD类中名为factorial的方法调用factorial类中名为factorial的方法。通常,我会这样做: FactorialCalculator newCalc = new FactorialCalculator(8); 但是,factorial是factoriacalculator类中唯一的方法,我不允许创建更多的方法,包括构造函数 有什么建议吗?如果是静态方法,您可以使用FactorialCalculator.factorial(…)将其创建
BCD
类中名为factorial
的方法调用factorial
类中名为factorial
的方法。通常,我会这样做:
FactorialCalculator newCalc = new FactorialCalculator(8);
但是,factorial
是factoriacalculator
类中唯一的方法,我不允许创建更多的方法,包括构造函数
有什么建议吗?如果是静态方法,您可以使用
FactorialCalculator.factorial(…)
将其创建为静态方法:
public class FactorialCalculator {
public static int factorial(int number) {
// Calculate factorial of number
}
}
你可以这样称呼它:
int factorial = FactorialCalculator.factorial(5); // for the example
int number = 10;
int f = FactorialCalculator.factorial(number);
static方法是一种与任何类的任何实例都不关联的方法,可以使用Classname.staticMethod()符号来访问它。很简单,如果将其设置为
static
,则可以从另一个类调用它。
将其创建为静态方法:
class FactorialCalculator {
public static int factorial(int number) {
...YourCode...
}
}
你可以这样称呼它:
int factorial = FactorialCalculator.factorial(5); // for the example
int number = 10;
int f = FactorialCalculator.factorial(number);
您可以使用默认构造函数,它只是
FactorialCalculator fc=new FactorialCalculator()代码>。就这么简单。但是,看起来您的老师希望您创建一个静态方法。静态方法有点像类的实用程序,而不是对象的函数。因此,在您的例子中,您应该使factoriacalculator更像是一个实用类,而不是一个对象类publicstaticintfactorial(intnum){}
应该可以做到这一点。这样,您就可以像您在示例中所做的那样转到FactorialCalculator.factorial(5)
希望这有帮助 首先,您总是有标准构造函数,它不接受任何参数。所以你们可以建立因子计算器,然后调用它的因子方法 虽然最好是静态的,但请注意,如果不定义构造函数,则可以免费获得默认构造函数。