JavaRush
Акция
Университет
Java FullStack
Python FullStack
new
Web FullStack
new
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема

Лекции

  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Мое обучение
  • Курсы
  • Университет
  • Карта квестов
  • Лекции
  • Слушатели (Listeners) и интерфейсы событий

    JAVA 25 SELF
    50 уровень,0 лекция
    Как в Java устроена событийная модель: источник генерирует событие, а подписанные слушатели получают уведомление и реагируют. Разберём ключевые интерфейсы слушателей из Swing — ActionListener, MouseListener, KeyListener, ChangeListener, DocumentListener — и покажем, как регистрировать обработчики через addActionListener и реализовывать метод actionPerformed. Потренируемся подключать слушатели к JButton/ JFrame, сравним анонимные классы и лямбда-записи, обсудим типичные ошибки и практические советы.
    Открыта
  • События в Swing и AWT: основы, примеры

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

    JAVA 25 SELF
    50 уровень,2 лекция
    В лекции разбираем, как спроектировать собственные события в Java: создаём класс события на базе java.util.EventObject, описываем интерфейс слушателя через java.util.EventListener, добавляем механизм подписки/отписки ( add...Listener/ remove...Listener) и уведомления ( fire...). Посмотрим практику на примерах DataLoader и счётчика, обсудим обработчики на анонимных классах и лямбда-выражениях, а также разберём типичные ошибки (исключения в слушателях, утечки памяти, ConcurrentModificationException).
    Открыта
  • Pattern Observer (наблюдатель)

    JAVA 25 SELF
    50 уровень,3 лекция
    Поведенческий паттерн «Наблюдатель»: роли Subject и Observer, подписка/отписка через addObserver/ removeObserver, и рассылка уведомлений методом notifyObservers. Разбираем связь со событийной моделью Java: button. addActionListener( listener) ; → вызов actionPerformed(). Практика на примерах (термометр и кондиционер, мини‑счётчик и лямбды), а также почему java.util.Observable/ Observer устарели и какие есть современные подходы.
    Открыта
  • Поток EDT и долгие операции в UI

    JAVA 25 SELF
    50 уровень,4 лекция
    В этой лекции разбираем, что такое поток обработки событий UI — EDT в Swing и его аналог JavaFX Application Thread, почему компоненты интерфейса непотокобезопасны и из‑за чего «подвисает» окно при тяжёлых задачах. Покажем правильные приёмы: вынос вычислений в фон через new Thread(...), обновление интерфейса вызовами SwingUtilities.invokeLater и Platform.runLater, а также использование высокоуровневых инструментов SwingWorker<T, V> и Task<V>/ Service<V> для прогресса, отмены и обработки ошибок.
    Открыта
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush