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

Лекции

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

    JAVA 25 SELF
    21 уровень,0 лекция
    В лекции разберём лямбда-выражения в Java: что это и зачем нужны, как устроен синтаксис и сокращения, как лямбды связаны с функциональными интерфейсами ( @FunctionalInterface), чем они отличаются от анонимных классов, и как работает захват переменных ( final / effectively final). На практических примерах с Runnable, Consumer, Comparator, Function и Stream API увидим, как писать короче и понятнее. Завершим разделом «Типичные ошибки» и советами, как их избегать.
    Открыта
  • Method References (::): ссылки на методы

    JAVA 25 SELF
    21 уровень,1 лекция
    Краткое руководство по ссылкам на методы в Java: где и как использовать method reference вместо лямбд. Разберём 4 формы: Класс::метод (статический и «на экземпляре»), объект::метод, Класс::new. Поймём сопоставление сигнатур с функциональными интерфейсами, сравним с лямбда-выражениями, посмотрим практические примеры с forEach, sort, map и обсудим типичные ошибки (несоответствие сигнатур, перегрузка методов и т. п.).
    Открыта
  • Default-методы в интерфейсах

    JAVA 25 SELF
    21 уровень,2 лекция
    В лекции разбираем, зачем в Java 8 появились default-методы в интерфейсах, как они позволяют развивать API без поломки старого кода, их синтаксис (ключевое слово default перед возвращаемым типом) и поведение в реализациях. На примерах из стандартной библиотеки ( List: forEach, replaceAll, sort) рассмотрим практику применения. Обсудим ограничения: нельзя перекрывать методы Object ( equals/ hashCode/ toString), а также правила разрешения конфликтов при множественной реализации и типичные ошибки.
    Открыта
  • Static-методы в интерфейсах

    JAVA 25 SELF
    21 уровень,3 лекция
    Разбираем, как и зачем интерфейсы в Java получили static-методы: синтаксис объявления, отличие от default-методов, ключевые ограничения (не наследуются, не переопределяются, вызов только через имя интерфейса, доступ лишь к static членам, поддержка private static с Java 9+). На практике посмотрим на Movable.resetPosition(), вспомогательный Logger, фабрики коллекций List.of()/ Set.of()/ Map.of() и утилиты Comparator.reverseOrder(). В конце — типичные ошибки и как их избежать.
    Открыта
  • Интерфейсы из стандартной библиотеки: Comparable, Serializable и др.

    JAVA 25 SELF
    21 уровень,4 лекция
    Разбираем ключевые интерфейсы стандартной библиотеки Java и зачем они нужны в реальных проектах: естественная сортировка через Comparable<T> и пользовательские правила с Comparator<T>, сериализация объектов с Serializable, безопасное управление ресурсами через AutoCloseable, перебор коллекций благодаря Iterable<T>, а также маркерные Cloneable и слушатели событий. На насыщенных примерах увидим правильные сигнатуры методов ( compareTo, compare, close, iterator) и типичные ошибки, которых стоит избегать.
    Открыта
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush