Java:用这个调用非静态方法。来自静态方法

时间:2013-09-27 20:40:15

标签: java

我想知道我是否可以使用它。从静态方法中调用非静态方法。我知道我需要一个对象来引用静态方法中的非静态方法。感谢

4 个答案:

答案 0 :(得分:3)

没有。在静态方法中,this没有意义,也不会编译。这由Java语言规范的§8.4.3.2涵盖,虽然它应该相当直观 - this会引用什么?

可以从静态方法中调用非静态方法,而不是通过this。你必须有一个实例来调用它们。

答案 1 :(得分:0)

您不能在静态方法中使用“this”关键字。

答案 2 :(得分:0)

答案是否定的。静态方法与类的实例无关,因此只有存在类的实例时,它才能访问具有含义的同一类的非静态变量或方法

答案 3 :(得分:0)

不使用this,但如果您真的想要,如果该类名为MyClass,则可以

new MyClass().someNonStaticMethod() 

但是如果你正在调用这样的实例方法,那么它们应该是静态的。