|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
вот такая ситуация находясь в статическом контексте пытаюсь вызвать статическую функцию другого класса. Получаю ошибку. Внимание: я знаю как обойти тупость компилятора и исправить этот код, чтобы все заработало правильно. Но ситуация глупая. Такого в языке с многолетней эксплуатацией просто быть не должно. Очевидно, что поскольку я нахожусь в статическом контексте, не статические поля мне не доступны и НЕ интересны, поэтому дай мне весь доступный статический контекст. а вот фиг. ======================== поскольку я занимаюсь кодогенерацией на различный языках. постоянно нарываюсь на такие идиоцкие "закладки". Наболело. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 15:18 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
ах да, забыл написать. в C# например все работает так, как и должно. Всем привет! ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 15:27 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Дарахой, днефничок. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 15:41 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
язычёк ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 15:50 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblin, Вы так уверенно говорите о том, что можете ошибки компилятора обойти, но вот непонятно, что это такое за определение у Вас в коде Код: java 1.
Уберите его и компилятор сразу "поумнеет" или определите Код: java 1.
. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:11 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Назвали переменные и классы одинаково - а потом удивляются. Вот нахрена так делать? Вы бы еще их еще и по русски назвали бы и с пробелами. Вроде же общепринято, что классы называют с заглавной буквы, а поля и переменные со строчной. А на факт, что какой-то другой говно язык по другому обрабатывает говно код - любителям кофе глубоко пофиг. IMHO P.S. А в C# можно переменные и классы называть по русски и с пробелами? Вот в Oracle - запросто ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:16 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
TEST test; все что я делаю соответствут правилам.а выкрутится можно ещё проще. Main.TEST.set(); вручную бы такой код скорее писать бы не стал. но кодогенератор - он прост, генерит по правилам, согласно придложенным метаданным. данная сиуация, досадный, но легко обходимый, баг - исправление которого ничего не поломает, а только улучшит. ещё раз в С# все работает как и ожидается. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:21 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblinисправление которого ничего не поломает, а только улучшит. Чо улучшит-то? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:22 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblin, Не надо. При попытке стартануть такой проект выдает ошибку на строку с объявлением Код: c# 1.
Error 1 'Project1.Main.TEST2.TEST': cannot declare instance members in a static class c:\users\valery\documents\visual studio 2012\Projects\Project1\Project1\Main.cs 24 18 Project1. Та что и Вам привет. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:25 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Valery Shiskin, Забыл указать, что не поленился C# протестить. Не поверил, что там такой код допустим ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:27 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblin, Еще раз. Не работает ни хрена в c#. Не вводите в заблуждение, а если есть работающий код, то покажите его. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:30 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
А в C# можно предлагаю не начинать холивар. С# был упомянут в подтверждении логики того как все должно происходить. Назвали переменные и классы одинаково - а потом удивляются. ну да. люди такие. они ещё в базах данных делают так, что имена таблиц совпадают с именами некоторых полей. дикари! а потом кодогенератор берет эти метаданные и по ним генерит JAVA код . получается некомпилируемый код. на JAVA. на всех других языках - ОК. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:30 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Еще раз. Не работает ни хрена в c#. Не вводите в заблуждение, а если есть работающий код, то покажите его. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:37 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Чо улучшит-то? язык. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:39 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblin, Нормально, это у таких как Вы. А у нас, как вы сказали, "дикарей" существует точное представление о том, почему совпадение имен таблиц и полей допустимо в sql и требует аккуратности при использовании, как Вы мудро сказали "во всех других языках". PS. Не злите Blazkowicz, а то он умеет очень хорошо отвечать "НЕ ДИКАРЯМ" ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:40 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblin...а потом кодогенератор берет эти метаданные и по ним.... А сделать правильный кодогенератор не судьба? Например к названиям классов/полей добавлять префиксы. Cheblin... они ещё в базах данных делают так, что имена таблиц совпадают с именами некоторых полей. дикари! ... Вот именно, а потом удивляются, что запрос данных не находит или находит лишнее. Когда параметры ф-ции и поля в таблице названы одинаково ))) Ну и вопрос остается: что будет, если поля в таблице будут названы по русски и с пробелами. Кодогенератор так и будет кодогенерить на Java? И опять виновата будет Java, что пробелы в названиях переменных и классах не допускаются? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:43 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Не злите Blazkowicz, код под С# скомпилировался? А у нас, как вы сказали, "дикарей" перечитайте мое сообщение. там написано совершенно о другом. не торопитесь отвечать. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:47 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblin, И где в этом коде есть статические классы? Забыли или разницы не понимаете. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:48 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Например к названиям классов/полей добавлять префиксы существует 338 способов как, извернуться и обойти очевидный баг компилятора. вот программисты js обладают подобными навыками в совершенстве. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:54 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
И где в этом коде есть статические классы? Забыли или разницы не понимаете. Valery, С# похож на JAVA примерно также, как JAVA похожа на JavaScript. Читать документацию всеравно придется. не торопитьесь отвечать. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 16:58 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblin, Вы не желаете принять, что совершенно не понимаете, что такое static класс в java, что такое static класс в c#. У Вас определены nested классы. Вы не сможете в java в inner классах определить static метод. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 17:07 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblin, Так и почитайте документацию, а лучше спецификацию и Вы поймете, что компилятор java работает в точном соотвествии со СВОЕЙ, а не с ВАШЕЙ спецификацией. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 17:09 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Valery Shiskin вы совершенно не хотите читать документацию, а рассуждать хотите. в итоге генерируете белый шум. для чего вам это? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 17:10 |
|
non-static variable ... cannot be referenced from a static context
|
|||
---|---|---|---|
#18+
Cheblin, Укажите, пожалуйста документацию, подтверждащую, что компилятор java должен компилировать Ваш код. Я могу назвать ошибкой компилятора с#, тот факт, что он не понимает такой код, как: Код: java 1.
А в java это допустимо. Вот, чтобы такая возможность существовала и не допускается двусмысленный код, подобный Вашему. И, думаю, разработчики в java этому только рады. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 17:51 |
|
|
start [/forum/topic.php?fid=59&fpage=43&tid=2121914]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 169ms |
0 / 0 |