这会工作 - 公共课

时间:2011-03-30 22:35:25

标签: java class methods

我想知道以下代码是否可行:

if (M != 0){

    Tools.Printer(stdnr);

    }

背景资料:

我创建了一个带有一些函数的公共类Tools。其中一个功能是void Printer功能。是否有规则或某些内容如果你想使用Tools.something你需要将Tools.something分配给一个整数/打印它等等。或者Tools.Printer应该自己工作。

我问这个是因为我的代码找不到任何问题。如果有人可以按照我上面使用的条款帮助我,我会很高兴 - 我想他们是非常错误的......

非常感谢,非常感谢帮助

1 个答案:

答案 0 :(得分:1)

如果你的方法是一个void类型,它返回 nothing ,因此你不需要将它分配给一个变量(事实上,如果你这样做,你将得到一个编译时错误)。

如果它是一个函数,就像它返回一些值,例如:

public String foo()
{
 return "kdfldj";
}

您仍然无需将其分配给变量。返回的值将被丢弃。例如,StringBuilder.append返回您刚刚附加到的StringBuilder,但您可以安全地调用它:

myStringBuilder.append("some text");

忽略返回值。

但是,如果您的Tools.Printer方法不是static方法,则需要创建一个工具实例,或者分配给这样的变量:

Tools tools = new Tools();
tools.Printer(stdnr);

或初始化而不放在变量中:

new Tools().Printer(stdnr);

但是如果Printer是一个静态方法,那么你的代码应该没问题,因为你通过它所包含的类来调用方法。