Недавно я был отстранен от программирования на Java в академических целях, и во время своего первого проекта я столкнулся с чем-то интересным.Переменные Static/Class и GUI
Мне пришлось разработать графический интерфейс для магазина с кнопками, которые выполняли различные задачи, и я заметил, что с моими переменными происходит что-то странное. Любые CLASS VARIABLES, которые мои кнопки изменили с помощью своих действий, не обязательно должны быть объявлены статическими, а любые КЛАССНЫЕ ПЕРЕМЕНЫ, которые мой основной метод коснулся, должны были быть объявлены статическими.
Почему это? Мои методы Main Method и ActionListener находятся на одном уровне выполнения. (они все в одном классе, ни один из них не встроен друг в друга)
Надеюсь, этот вопрос не слишком очевиден/невозможен, я стараюсь как можно больше узнать о Java.
Главный метод сам по себе статичен. Методы прослушивания слушателей не являются. –
@SilvioMayolo. Так это в Java, что статические методы могут обращаться только к статическим (или локальным) переменным? – user3303680
Сторона примечания, но термин «переменная класса» используется для обозначения статических полей. Нет такой вещи, как нестатическая переменная класса. Я думаю, вы ищете слово «поле» или «атрибут» или «свойство». – Zarwan