Уроки Java онлайн: программа курса Java Core для начинающих

28 modules — от первой программы до JDBC и многопоточности. Уроки по 5–15 минут, практические задачи и тесты для самопроверки.

Start Course

Free · Without registration

Course Description

Здесь собраны все 196 lessons курса Java Core в том порядке, в котором их стоит проходить: от установки JDK и первой программы до ООП, коллекций, Stream API, JDBC и многопоточности. Курс подходит как самоучитель Java для начинающих: опыт программирования заранее не нужен.

Как заниматься:

  1. Прочитайте урок и запустите примеры кода у себя.
  2. Ответьте на вопросы теста по теме урока — так видно, что стоит повторить.
  3. Решите задачи модуля: всего в курсе 165 practical tasks, ко многим есть готовое решение для сверки.

Проверить себя по всему курсу можно в тестах по Java, а все задачи собраны на странице практические задачи по Java. Коротко о курсе, его формате и частые вопросы — на странице бесплатный онлайн-курс Java с нуля.

Course Details

  • 👥20,000+ learners
  • 🌐Русский
  • 🗂28 modules
  • 📚196 lessons
  • ✅165 practical tasks
  • 📝1,171 test question
  • 🎥133 video lessons
  • ⏱~107 hours of study

Course syllabus: all lessons by module

2. Запуск Java

12 lessons · 2 practical tasks

  1. Как установить JDK›
  2. Создание первого приложения›
  3. Команды командной строки (CMD)›
  4. Компиляция и запуск приложения из командной строки›
All lessons in this module (12)
  1. Как создать пакет в Java?›
  2. Ключи classpath и sourcepath в Java›
  3. Как создать JAR-файл в Java›
  4. Аргументы командной строки в Java›
  5. Использование bat/sh файлов›
  6. Установка IntelliJ IDEA: пошаговая инструкция для Windows, macOS и Linux›
  7. Создание проекта в IntelliJ IDEA›
  8. Инструменты Java разработчика — IDE, JDK, Git, Maven, SQL›
Module tasks ›

3. Синтаксис Java

8 lessons · 6 practical tasks

  1. Лексика Java: пробелы, идентификаторы и комментарии›
  2. Правила именования идентификаторов›
  3. Примитивные типы данных и литералы›
  4. Объявление и вызов методов в Java›
All lessons in this module (8)
  1. Объявление, инициализация и область видимости переменных›
  2. Прямой, обратный и дополнительный код›
  3. Преобразование и приведение примитивных типов›
  4. Ввод с клавиатуры в Java›
Module tasks ›

4. Операторы Java

9 lessons · 6 practical tasks

  1. Арифметические операторы›
  2. Инкремент и декремент›
  3. Операторы сравнения в Java›
  4. Логические операторы в Java›
All lessons in this module (9)
  1. Тернарный оператор в Java›
  2. Оператор присваивания в Java›
  3. Приоритет операций в Java›
  4. Конкатенация строк в Java›
  5. Побитовые операции в Java›
Module tasks ›

7. ООП

19 lessons · 16 practical tasks

  1. Процедурное и объектно-ориентированное программирование›
  2. Три принципа ООП в Java›
  3. Классы и объекты в Java›
  4. Виды конструкторов в Java›
All lessons in this module (19)
  1. Ключевое слово this в Java›
  2. Перегрузка методов и конструкторов в Java›
  3. Структура памяти в Java: стек и куча›
  4. Передача объектов в методы›
  5. Varargs в Java: методы с переменным числом аргументов›
  6. Рекурсия в Java›
  7. Сборщик мусора и метод finalize›
  8. Наследование в Java и ключевое слово extends›
  9. Ключевое слово super в Java›
  10. Модификаторы доступа в Java›
  11. Геттеры и сеттеры в Java: концепция JavaBeans›
  12. Переопределение методов в Java›
  13. Абстрактные классы и методы в Java›
  14. Ключевое слово final в Java›
  15. Модификатор native для объявления методов›
Module tasks ›

14. Дата и время

7 lessons · 7 practical tasks

  1. Дата и время в Java: java.time API и текущая дата›
  2. Класс LocalDate в Java: методы и примеры›
  3. Класс LocalTime в Java: текущее время, форматирование и методы›
  4. Класс LocalDateTime в Java: создание, форматирование и примеры›
All lessons in this module (7)
  1. Класс java.time.Instant в Java: что это и как использовать›
  2. Классы Duration и Period в Java›
  3. Класс DateTimeFormatter в Java: форматирование и разбор дат›
Module tasks ›

16. Lambda

9 lessons · 7 practical tasks

  1. Лямбда-выражения в Java›
  2. Функциональный интерфейс в Java›
  3. Predicate в Java: функциональный интерфейс и примеры›
  4. Интерфейс Consumer в Java›
All lessons in this module (9)
  1. Интерфейс Function в Java›
  2. Supplier в Java: функциональный интерфейс и метод get()›
  3. Интерфейс UnaryOperator в Java›
  4. Специализации функциональных интерфейсов в Java›
  5. Ссылки на методы (method reference) в Java›
Module tasks ›

17. Коллекции

20 lessons · 10 practical tasks

  1. Коллекции в Java: Collection Framework и иерархия коллекций›
  2. Структуры данных в Java: список, стек, очередь и множество›
  3. Интерфейс Collection в Java: методы и контракт›
  4. Интерфейс List и класс ArrayList в Java›
All lessons in this module (20)
  1. Интерфейс Set, классы HashSet и LinkedHashSet в Java›
  2. Интерфейсы Comparable и Comparator в Java›
  3. Интерфейсы SortedSet, NavigableSet и класс TreeSet в Java›
  4. Интерфейсы Queue и Deque в Java›
  5. Класс ArrayDeque в Java›
  6. Класс LinkedList в Java›
  7. Класс PriorityQueue в Java›
  8. Интерфейсы Iterator и ListIterator в Java›
  9. Интерфейс Map в Java: методы, Map.Entry и примеры›
  10. HashMap в Java: как устроена внутри›
  11. TreeMap, SortedMap и NavigableMap в Java›
  12. LinkedHashMap в Java и LRU-кэш›
  13. Класс Collections в Java: методы и примеры›
  14. Backed Collections и Array-backed списки в Java›
  15. Унаследованные классы (Legacy Classes) в Java›
  16. Что такое принцип PECS в Java?›
Module tasks ›

19. Алгоритмы

8 lessons · 9 practical tasks

  1. Среднее арифметическое›
  2. Числа Фибоначчи в Java›
  3. Сложность алгоритма и O-нотация›
  4. Метод swap в Java: обмен значениями двух переменных›
All lessons in this module (8)
  1. Как перевернуть (развернуть) массив в Java›
  2. Сортировка пузырьком в Java›
  3. Сортировка методом выбора в Java›
  4. Поиск элемента в массиве в Java›
Module tasks ›

20. Исключения

8 lessons · 2 practical tasks

  1. Обработка исключений в Java›
  2. Иерархия исключений в Java: Throwable, Error, Exception›
  3. Создание собственного класса исключения в Java›
  4. Оператор try-catch-finally в Java›
All lessons in this module (8)
  1. throw и throws в Java: разница и примеры›
  2. Исключения при наследовании в Java: переопределение методов и конструкторы›
  3. Частые исключения в Java: причины и как исправить›
  4. Обработка исключений в Java: лучшие практики и типичные ошибки›
Module tasks ›

21. I/O

7 lessons · 6 practical tasks

  1. Потоки данных (stream) в Java: ввод-вывод и упаковка потоков›
  2. Конструкция try-with-resources в Java›
  3. Класс File в Java: работа с файлами и каталогами›
  4. Типы байтовых потоков в Java: InputStream и OutputStream›
All lessons in this module (7)
  1. Классы символьных потоков в Java: Reader и Writer›
  2. Предопределенные потоки ввода-вывода в Java: System.in, System.out, System.err›
  3. Использование класса Scanner в Java›
Module tasks ›

25. SQL

10 lessons · 9 practical tasks

  1. Описание реляционных Баз Данных›
  2. Нормализация Баз Данных›
  3. Какие существуют типы данных в MySQL›
  4. SQL: оператор CREATE›
All lessons in this module (10)
  1. SQL: оператор SELECT›
  2. Оператор INSERT в SQL›
  3. SQL: все виды джойнов›
  4. Изменение таблиц: UPDATE, RENAME, ALTER, DELETE, DROP›
  5. Типы ключей баз данных›
  6. Функции, используемые в операторах SELECT и WHERE›
Module tasks ›

27. Многопоточность

13 lessons · 5 practical tasks

  1. Многозадачность vs. многопоточность›
  2. Интерфейс Runnable и класс Thread в Java›
  3. Состояния потоков в многопоточности›
  4. Переключение между потоками›
All lessons in this module (13)
  1. Приоритеты потоков в Java›
  2. Метод Thread.sleep()›
  3. Метод Thread.yield()›
  4. Метод Thread.join() в Java›
  5. Метод Thread.isAlive()›
  6. Потокобезопасные классы›
  7. Синхронизация потоков›
  8. Взаимная блокировка или дедлок›
  9. Межпотоковые коммуникации›
Module tasks ›

Comments

Please log in or register to have a possibility to add comment.