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

Лекции

  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Мое обучение
  • Курсы
  • Университет
  • Карта квестов
  • Лекции
  • Лямбда-выражения: синтаксис, области видимости

    JAVA 25 SELF
    48 уровень,0 лекция
    Повторяем и углубляем лямбда-выражения в Java: синтаксис (параметры, стрелка ->, тело), короткие формы без скобок и return, связь с функциональными интерфейсами ( Comparator, Runnable, Consumer), повседневные примеры со списками, потоками и Stream API. Разбираем область видимости и правило «эффективно final», различие this у лямбд и анонимных классов, а также типичные ошибки и способы их избежать.
    Открыта
  • Использование лямбда в коллекциях и стримах

    JAVA 25 SELF
    48 уровень,1 лекция
    Практика лямбда-выражений в коллекциях и Stream API: как заменить анонимные классы компактными лямбдами, пользоваться методами коллекций ( forEach, removeIf, sort, replaceAll) и строить конвейеры обработки данных ( stream → filter → map → sorted → collect). Сравним с анонимными классами, обсудим «эффективно final» переменные, приведём таблицу основных операций и разберём типичные ошибки.
    Открыта
  • Преимущества и недостатки лямбда-выражений

    JAVA 25 SELF
    48 уровень,2 лекция
    В лекции разбираем, зачем Java получила лямбда-выражения: краткость и читаемость, передача поведения как параметра, интеграция с коллекциями и Stream API ( filter, map, forEach), захват «эффективно» final переменных и удобная запись колбэков через оператор ->. Параллельно рассмотрим подводные камни: отладка длинных цепочек, неоднозначность перегрузок ( Runnable vs Callable), ограничения замыканий, сериализация и вложенные лямбды. В конце — практические рекомендации, когда использовать лямбды и разбор типичных ошибок.
    Открыта
  • Замыкания (closures) в Java: особенности

    JAVA 25 SELF
    48 уровень,3 лекция
    В лекции разбираем, что такое замыкание и как оно работает в Java: как лямбды и анонимные классы «захватывают» внешние переменные, почему локальные переменные должны быть final или эффективно final, чем захват локальных переменных отличается от обращения к полям класса, и как ведёт себя this в лямбдах и анонимных классах. Покажем фабрики функций с IntSupplier, разберём внутреннюю реализацию захвата и типичные ошибки (например, сообщение компилятора Variable used in lambda expression should be final or effectively final).
    Открыта
  • Анонимные классы: отличие от лямбда, примеры

    JAVA 25 SELF
    48 уровень,4 лекция
    В лекции разбираем, что такое анонимный класс в Java, чем он отличается от лямбда-выражения: синтаксис, возможности (поля, дополнительные методы, переопределение toString/ equals), область видимости и поведение this, захват переменных (только final/«эффективно final»). Показаны практические примеры с Runnable, Comparator, Predicate, а также рекомендации — когда выбирать лямбду, а когда анонимный класс.
    Открыта
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush