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

Лекции

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

    JAVA 25 SELF
    17 уровень,0 лекция
    В этой лекции разберём, что такое наследование в Java, как с его помощью избегать дублирования кода, а также как объявлять иерархии через ключевое слово extends. Посмотрим, что именно наследует подкласс, какие есть ограничения (одиночное наследование, приватные члены, конструкторы), разберём практический пример с животными, нюансы с конструкторами и типичные ошибки.
    Открыта
  • Переопределение методов (override), аннотация @Override

    JAVA 25 SELF
    17 уровень,1 лекция
    В этой лекции разбираем переопределение методов в Java: как и зачем подкласс подменяет поведение родителя, какую пользу даёт аннотация @Override, как работает полиморфизм при вызовах через ссылку базового типа, а также ключевые правила (сигнатура, модификаторы доступа, исключения, ковариантность) и ограничения ( static, final, private). Завершаем практикой на мини‑проекте «Зоопарк» и разбором типичных ошибок.
    Открыта
  • Использование super: вызов конструктора и методов базового класса

    JAVA 25 SELF
    17 уровень,2 лекция
    Разбираем ключевое слово super в Java: как вызывать методы и конструкторы базового класса, как обращаться к скрытым полям родителя, когда и зачем расширять поведение через super и super(...), а также ограничения (нельзя использовать в статических методах, нет доступа к private) и типичные ошибки. Много практических примеров на иерархии Animal/ Cat/ Dog и Vehicle/ Car.
    Открыта
  • Создание иерархии классов, примеры из жизни

    JAVA 25 SELF
    17 уровень,3 лекция
    Научимся проектировать и реализовывать иерархии классов на Java: как выделять общее и частное, выстраивать дерево наследования, где уместно отношение is-a, а когда лучше использовать композицию ( has-a). Рассмотрим живые примеры (животные, геометрия, транспорт, пользователи), тонкости архитектуры и типичные ошибки при проектировании.
    Открыта
  • Проблемы и ограничения наследования

    JAVA 25 SELF
    17 уровень,4 лекция
    В этой лекции обсуждаем пределы модели наследования в Java: одиночное наследование классов, отсутствие наследования конструкторов и недоступность private-членов. Разберём «хрупкие» иерархии и эффект «ломающегося» наследования, покажем альтернативы — композицию ( has-a), делегирование и интерфейсы, а также критерии «когда действительно нужно extends». По пути отметим вызов родительского конструктора через super(...) и типичные ошибки проектирования.
    Открыта
  • Понятие полиморфизма, зачем он нужен

    JAVA 25 SELF
    18 уровень,0 лекция
    В лекции разбираем полиморфизм в Java: что это такое, чем отличаются overloading и overriding, как работает позднее связывание и почему один интерфейс может иметь множество реализаций. На практических примерах увидим, как полиморфизм упрощает архитектуру, делает код расширяемым и снижает связность модулей.
    Открыта
  • Перегрузка методов (overloading)

    JAVA 25 SELF
    18 уровень,1 лекция
    Погружаемся в перегрузку методов в Java: когда имеет смысл объявлять несколько версий одного и того же метода, как компилятор выбирает наилучшее соответствие по параметрам, почему нельзя перегружать только по возвращаемому типу, и как работают перегруженные конструкторы и ... varargs. Разберём примеры с println, создадим небольшой Calculator и пройдёмся по типичным ошибкам, связанным с автоприведением и двусмысленностью между Integer/ Long.
    Открыта
  • Переопределение методов (overriding): отличие от перегрузки

    JAVA 25 SELF
    18 уровень,2 лекция
    Подробно разбираем переопределение методов в Java: как overriding обеспечивает полиморфизм во время выполнения, чем отличается от overloading, какие действуют правила (сигнатуры, доступ, исключения, ковариантность), как использовать @Override и вызывать логику родителя через super. Покажем практические примеры и разберём типичные ошибки.
    Открыта
  • Использование полиморфизма на практике

    JAVA 25 SELF
    18 уровень,3 лекция
    Показываем полиморфизм на живых примерах: как хранить разнородные объекты в одной коллекции базового типа и вызывать «правильные» методы без if/ switch, как добавление нового подкласса не требует переписывать логику, и какие ограничения у подхода. Построим иерархию сотрудников с методом work(), поговорим о расширяемости и разберём типичные ошибки.
    Открыта
  • Связь полиморфизма и абстрактных классов

    JAVA 25 SELF
    18 уровень,4 лекция
    Как абстрактные классы и методы формируют общий контракт и включают полиморфизм в Java: почему нельзя создать абстрактный объект, как наследники реализуют обязательные методы, как работать через базовый тип и при этом получать «правильное» поведение. Рассмотрим примеры с животными и иерархией сотрудников, нюансы синтаксиса и типичные ошибки.
    Открыта
  • Абстракция в ООП: зачем и как применять

    JAVA 25 SELF
    19 уровень,0 лекция
    Понятное введение в абстракцию в ООП на Java: что это, зачем нужна и как применять в проектировании. Разберём инструменты языка — абстрактные классы abstract class и интерфейсы interface, абстрактные методы и работу через общий контракт (например, вызовы вроде payment.process() или draw()). На практических примерах ( Shape, Payment, Transport) покажем, как скрывать детали реализации, уменьшать связанность и упрощать расширение системы.
    Открыта
  • Абстрактные классы и методы: синтаксис, примеры

    JAVA 25 SELF
    19 уровень,1 лекция
    В этой лекции шаг за шагом разбираем абстрактные классы и методы в Java: когда нужен abstract, как объявить абстрактный class, в чём отличие от interface, и как реализовывать обязательные методы (например, makeSound()) в наследниках. Сопроводим теорию наглядными примерами ( Animal, Transport, Shape) и разберём типичные ошибки: от попытки создать экземпляр абстрактного класса до неверного использования модификаторов.
    Открыта
  • 1
  • ...
  • 8
  • 9
  • 10
  • 11
  • 12
  • ...
  • 57
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush