Основные возможности платформы Hexlet не доступны в вашем браузере. Пожалуйста, обновитесь.
курс

Байт-код Java

Данный курс для тех, кто уже знает синтаксис языка, но хотел бы разобраться в том, что из себя представляет чёрный ящик в виде JVM с её ByteCode, «руками потрогать» то, во что превращается ваш код после компиляции, научиться читать ByteCode и как следствие научиться анализировать программы даже без исходных кодов! Все это и многое другое в нашем новом курсе, который может быть востребованный даже среди ведущих разработчиков.

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

Следующий рекомендованный курс: "Java: Структуры данных" (https://ru.hexlet.io/courses/collections)

Сначала рекомендуем пройти курс Java Generics

1.

Модуль 0. Урок 0. Введение.

теория (видео, 08:42)

Вводный урок в котором мы рассказываем о том: что это за курс и для кого, что необходимо знать перед прохождением курса, какова структура курса (количество модулей и уроков), кто мы такие и почему делаем этот курс, место данного курса среди других.

2.

Модуль 0. Урок 1. Что такое байт-код.

теория (видео, 04:51)

Узнать о том, что такое байт-код.

3.

Модуль 0. Урок 2. Используемое ПО.

теория (видео, 05:11)

Узнать, какое программное обеспечение будет использоваться.

4.

Модуль 1. Урок 0. Общий для класса байткод.

теория (видео, 18:30) / тесты

Узнать об общей для всего класса части байткода.

5.

Модуль 1. Урок 1. Пул констант.

теория (видео, 15:25) / тесты

Узнать о пуле констант в Java.

6.

Модуль 2. Урок 0. Методы. Часть 1.

теория (видео, 14:59) / тесты

Разобрать базовые методы байткода.

7.

Модуль 2. Урок 1. Методы. Часть 2.

теория (видео, 23:18) / тесты / упражнение

Разобрать базовые методы байткода.

8.

Модуль 3. Урок 0. Условный оператор IF (INT).

теория (видео, 17:34) / тесты / упражнение

Знакомство с бранчеванием и условным оператором IF для типа int.

9.

Модуль 3. Урок 1. Условный оператор IF (DOUBLE/FLOAT).

теория (видео, 16:12) / тесты / упражнение

Знакомство с бранчеванием и условным оператором IF для типа double/float.

10.

Модуль 3. Урок 2. Цикл FOR.

теория (видео, 25:51) / упражнение

Знакомство с оператором цикла FOR

11.

Модуль 3. Урок 3. Оператор SWITCH.

теория (видео, 21:31) / тесты

Знакомство с оператором SWITCH.

12.

Модуль 4. Урок 0. Вызов методов.

теория (видео, 15:46) / тесты

Знакомство с вызовом методов.

13.

Модуль 4. Урок 1. Инструкция INVOKESTATIC.

теория (видео, 10:32) / тесты

Знакомство с инструкцией INVOKESTATIC.

14.

Модуль 4. Урок 2. Инструкции INVOKESPECIAL и INVOKEVIRTUAL.

теория (видео, 18:48) / тесты

Знакомство с инструкциями INVOKESPECIAL и INVOKEVIRTUAL.

15.

Модуль 4. Урок 3. Инструкция INVOKEINTERFACE.

теория (видео, 07:21)

Знакомство с инструкцией INVOKEINTERFACE.

Испытания

В некоторых курсах есть практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки. В этом курсе таких заданий нет, но вы можете посмотреть задания из других курсов.

Статистика
1665
учащихся
253
вопроса
и ответа
9
часов
Учитель