Краткое практическое введение в модель событий
AWT/
Swing: создаём кнопку
JButton, подписываем слушателя через
addActionListener, обрабатываем в
actionPerformed. Разбираем анонимные классы и лямбда-выражения, популярные слушатели (
MouseListener/
MouseAdapter,
KeyAdapter,
DocumentListener), пишем мини-приложение на базе
JFrame,
JButton,
JLabel, смотрим на последовательность вызовов и типичные ошибки (тяжёлая работа в обработчике, финальность переменных в лямбдах, забытый
addActionListener, удаление слушателей, использование
SwingWorker).