什么使一个函数静态?

时间:2014-02-03 01:16:19

标签: java static

特别使用Java。什么使一个函数静态?那是什么意思?你应该如何选择使函数静态?

我的while循环被破坏是因为“非静态方法hasPrecedence(java.lang.String,java.lang.String)无法从静态上下文引用”

2 个答案:

答案 0 :(得分:2)

在类的特定实例之外调用静态方法。例如,在Java库中,Math.sqrt()函数与特定对象无关。

相反,必须使用特定对象调用非静态方法。例如,为String对象定义了toUpperCase()方法:

String str = "Hello World.";
String upperStr = str.toUpperCase();
System.out.println(upperStr);

请注意,我没有使用String.toUpperCase()来调用str.toUpperCase()


静态方法称为任何特定对象的。非静态方法称为要操作的特定对象。

答案 1 :(得分:0)

如果类的所有实例中只有一个共享,则函数是静态的。通常,静态函数用于“效用”工作。我的意思是,这个函数为你做了一些工作,它不需要/不应该要求创建类的实例。因此,静态函数不使用或无权访问实例变量或实例方法。