2014-10-04 7 views
-3

У меня есть следующий код, я хочу, чтобы позвонить data1() из data2()Как вызвать нестационарный метод в статическом?

private void data1() 
    { 
    } 
    private static void data2() 
    { 
     data1(); //generates error 
    } 
+1

путем создания объекта .... –

+0

Я не знаю, как – nightxx

+1

Я думаю, прежде чем делать что-то в java или любом языке ooops. вы должны пройти через концепцию OOPS ... Это очень простая концепция. –

ответ

1

В Одер, чтобы вызвать нераскрытый статический метод, что нужно для создания объекта.

Статические методы - это методы на уровне класса. «Обычные» методы находятся на объекте.

так, что вам нужно сделать для того, чтобы Исполнитель неофициального статического метода заключается в следующем:

class ClassName { 
    private static void data2() { 
     var data1Obj = new ClassName(); 
     data1Obj.data1(); 
    } 

    private void data1() { 
     //execute code here 
    } 
} 

, но если вы используете только data1 таким образом, вы могли бы сделать, что статическим

+0

Для моих (и, возможно, других) знаний, я хотел бы знать, что случилось с моим ответом, что он заслуживает пониженного голосования, поэтому я могу улучшить это, другие ответы в будущем –