Почему я получаю «нестатическую переменную, на которую нельзя ссылаться из статического контекста»?
У меня есть очень простой класс, который я хочу использовать в качестве подкласса другого. Но когда я помещаю его код в родительский класс, я получаю:
non-static variable this cannot be referenced from a static context
С другой стороны, когда я ставлю подклассGenTest
код класса вне «родительского» кода; код класса -JavaApp1
Я не получаю эту ошибку.
<code>public class JavaApp1 { class GenTest { @Deprecated void oldFunction() { System.out.println("don't use that"); } void newFunction() { System.out.println("That's ok."); } } public static void main(String[] args) { GenTest x = new GenTest(); x.oldFunction(); x.newFunction(); } } </code>
Почему это происходит ?