Статические методы максимально приближены к глобальному методу. так почему же этот метод вызова вызова невозможен? есть ли другой способ вызова статического метода без создания экземпляра класса?Можно ли вызвать статический метод другого класса из нестатического метода без экземпляра в java?
import java.io.*;
import java.util.*;
class pgm
{
int x,v;
static void func()
{
System.out.println("Function run");
}
}
class egs
{
public static void main(String args[])
{
pgm p=null;
pgm.func();
try
{
p.x=10;
p.func();
}
catch(NullPointerException e)
{
e.printStackTrace();
}
}
}
'func' не является статическим методом. Вы пытаетесь вызвать нестатический метод без вызова экземпляра. – user2357112
'egs.func()' не существует ... Я не уверен, почему вы ожидаете, что это сработает. Статические методы не являются глобальными, они все еще связаны с классом. В любом случае у вас даже нет статического метода (кроме основного) –
Возможный дубликат: http: // stackoverflow.com/questions/290884/what-is-the-reason-behind-non-static-method-not-be-referenced-from-a-static –