Что выведет код?
#Tasks
class Parent160725 {
void print() {
System.out.println("Parent160725");
}
}
class Child160725 extends Parent160725 {
void print() {
System.out.println("Child160725");
}
}
public class Task160725 {
public static void main(String[] args) {
Parent160725 obj = new Child160725();
obj.print();
}
}
#Tasks
👍2
Варианты ответа:
Anonymous Quiz
14%
Parent160725
68%
Child160725
14%
Ошибка компиляции
5%
Ничего не выведет
👍3
Продолжаем выбирать темы для разбора и голосовать за рассмотрение предложенных! 🤓
Голосуем за тему к рассмотрению в эти выходные!
Предлагаем новую тему!
(можете предложить что-то из того, что предлагали на прошлой и позапрошлых неделях и что проиграло в голосовании!)
Не стесняемся!✌️
Голосуем за тему к рассмотрению в эти выходные!
Предлагаем новую тему!
(можете предложить что-то из того, что предлагали на прошлой и позапрошлых неделях и что проиграло в голосовании!)
Не стесняемся!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Что такое рефлексия в Java? 🤓
Ответ:
Рефлексия позволяет анализировать и изменять структуру классов (поля, методы, конструкторы) во время выполнения. Используется в библиотеках, таких как Spring.
Пример:
Class<?> clazz = String.class;
Method method = clazz.getMethod("length");
System.out.println(method.invoke("test")); // 4
Рефлексия замедляет выполнение и требует осторожности из-за возможных ошибок доступа.
#собеседование
Ответ:
Пример:
Class<?> clazz = String.class;
Method method = clazz.getMethod("length");
System.out.println(method.invoke("test")); // 4
Рефлексия замедляет выполнение и требует осторожности из-за возможных ошибок доступа.
#собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
А вы знали, что первый "цифровой альбом" был продан в 1979 году?
В 1979 году компания Warner Bros. Records выпустила альбом Рая Кудера "Bop Till You Drop", который был записан в цифровом формате и стал первым цифровым релизом популярной музыки в США. Это был первый случай продажи музыки в полностью цифровом виде.
#facts
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
"Машины должны быть не только умными, но и добрыми."
Евгений Велтистов, автор "Электроника", сказал это в 1964 году в интервью о будущем робототехники.
Биография
#Citation #Biography
Please open Telegram to view this post
VIEW IN TELEGRAM
Wikipedia
Велтистов, Евгений Серафимович
советский детский писатель-фантаст, журналист и сценарист
👍3
Установка Maven на Linux
Требования
JDK: Установленный JDK (версия 8 или выше).
Интернет: Для загрузки Maven.
Терминал: Доступ к командной строке.
Шаги установки
Проверка JDK:
Выполните:
Вывод должен показать версию Java. Если JDK отсутствует, установите, например, OpenJDK:
Скачивание Maven:
Перейдите на сайт Apache Maven.
Скачайте архив, например, apache-maven-3.9.9-bin.tar.gz:
Распакуйте в /opt:
Настройка переменных окружения:
Откройте файл /etc/environment или ~/.bashrc:
Добавьте строки:
Примените изменения:
Проверка установки:
Выполните:
Вывод:
Настройка локального репозитория:
По умолчанию используется ~/.m2/repository.
Опционально настройте ~/.m2/settings.xml для кастомного пути или зеркал:
Нюансы:
Убедитесь, что JAVA_HOME указывает на правильный JDK.
Для системного доступа установите Maven в /opt и настройте права: sudo chown -R $USER /opt/apache-maven-3.9.9.
Используйте mvnw для согласованности версий в проектах.
#Java #middle #Maven #Maven_install
Требования
JDK: Установленный JDK (версия 8 или выше).
Интернет: Для загрузки Maven.
Терминал: Доступ к командной строке.
Шаги установки
Проверка JDK:
Выполните:
java -version
Вывод должен показать версию Java. Если JDK отсутствует, установите, например, OpenJDK:
sudo apt update
sudo apt install openjdk-11-jdk # Ubuntu/Debian
sudo dnf install java-11-openjdk-devel # Fedora
Скачивание Maven:
Перейдите на сайт Apache Maven.
Скачайте архив, например, apache-maven-3.9.9-bin.tar.gz:
wget https://downloads.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.tar.gz
Распакуйте в /opt:
sudo tar -xzvf apache-maven-3.9.9-bin.tar.gz -C /opt
Настройка переменных окружения:
Откройте файл /etc/environment или ~/.bashrc:
nano ~/.bashrc
Добавьте строки:
export M2_HOME=/opt/apache-maven-3.9.9
export PATH=$M2_HOME/bin:$PATH
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 # Путь к JDK
Примените изменения:
source ~/.bashrc
Проверка установки:
Выполните:
mvn -version
Вывод:
Apache Maven 3.9.9
Maven home: /opt/apache-maven-3.9.9
Java version: 11.0.16, vendor: Ubuntu
Настройка локального репозитория:
По умолчанию используется ~/.m2/repository.
Опционально настройте ~/.m2/settings.xml для кастомного пути или зеркал:
<settings>
<localRepository>/custom/m2/repository</localRepository>
</settings>
В памяти: На Linux Maven запускается через скрипт mvn, который вызывает JVM. Процесс аналогичен Windows: Maven Core, плагины и зависимости загружаются в память. Локальный репозиторий кэширует артефакты, снижая сетевую нагрузку.
Нюансы:
Убедитесь, что JAVA_HOME указывает на правильный JDK.
Для системного доступа установите Maven в /opt и настройте права: sudo chown -R $USER /opt/apache-maven-3.9.9.
Используйте mvnw для согласованности версий в проектах.
#Java #middle #Maven #Maven_install
👍3
Что выведет код?
#Tasks
public class Task170725 {
static void process(int x) {
System.out.println("int");
}
static void process(Integer x) {
System.out.println("Integer");
}
static void process(Object x) {
System.out.println("Object");
}
public static void main(String[] args) {
process(10);
process(Integer.valueOf(10));
process(null);
}
}
#Tasks
👍3
Варианты ответа:
Anonymous Quiz
48%
"int", "Integer", "Object"
8%
"int", "Object", "Object"
8%
"int", "Integer", "Integer"
36%
"int", "Integer", ошибка компиляции
👍3
Что такое сборщик мусора (Garbage Collector) в Java? 🤓
Ответ:
Сборщик мусора (GC) автоматически освобождает память, удаляя объекты, на которые больше нет ссылок. Работает в JVM, используя алгоритмы, такие как Mark-and-Sweep.
Пример:
Object obj = new Object(); // Создаем объект
obj = null; // Удаляем ссылку
// GC может освободить память при следующем цикле
GC управляется JVM, но можно предложить запуск через System.gc(). Разные сборщики (Serial, G1, ZGC) оптимизированы для разных сценариев. Для Junior важно понимать, что GC не гарантирует немедленного освобождения памяти.
#собеседование
Ответ:
Пример:
Object obj = new Object(); // Создаем объект
obj = null; // Удаляем ссылку
// GC может освободить память при следующем цикле
GC управляется JVM, но можно предложить запуск через System.gc(). Разные сборщики (Serial, G1, ZGC) оптимизированы для разных сценариев. Для Junior важно понимать, что GC не гарантирует немедленного освобождения памяти.
#собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
А вы знали, что термин "скроллинг" в интерфейсах был придуман в 1974 году?
Слово "scrolling" (прокрутка) начали использовать в системе Smalltalk для описания перемещения текста на экране, вдохновившись движением свитка. Это стандарт для современных интерфейсов.
#facts
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
"Программирование — это дисциплина, требующая точности мысли."
Борис Гнеденко, советский математик, сказал это в 1980 году в статье о вычислительных системах.
Биография
#Citation #Biography
Please open Telegram to view this post
VIEW IN TELEGRAM
Wikipedia
Гнеденко, Борис Владимирович
советский учёный, математик
🔥2
Введение в Java
Что такое Java?
Java — это высокоуровневый, объектно-ориентированный язык программирования, созданный компанией Sun Microsystems (ныне принадлежит Oracle) в 1995 году. Главная идея Java — "Write Once, Run Anywhere" (Напиши один раз, запускай везде). Это значит, что программа, написанная на Java, может работать на любом устройстве или операционной системе, где есть подходящая среда выполнения.
Java используется повсеместно: от веб-приложений и мобильных приложений (например, Android) до серверных систем, больших корпоративных проектов и даже встраиваемых устройств, таких как "умные" телевизоры или IoT-устройства.
Её популярность обусловлена несколькими факторами:
Кроссплатформенность: Работает на Windows, macOS, Linux и других системах.
Надежность: Java имеет строгую типизацию и встроенные механизмы обработки ошибок.
Большое сообщество: Огромное количество библиотек, фреймворков и документации.
Широкая применимость: От небольших скриптов до сложных распределенных систем.
Кроссплатформенность Java
Кроссплатформенность — это способность программы работать на разных операционных системах без необходимости переписывать код. В отличие от языков, таких как C или C++, где код компилируется в машинный код, специфичный для конкретной платформы (например, процессора или ОС), Java использует другой подход.
Когда вы пишете программу на Java, ваш код компилируется не в машинный код, а в байт-код. Это промежуточное представление программы, которое одинаково для всех платформ. Байт-код создается компилятором Java (javac) и сохраняется в файлах с расширением .class. Но сам по себе байт-код не может выполняться напрямую на вашем компьютере. Здесь на сцену выходит JVM — виртуальная машина Java.
JVM (Java Virtual Machine) интерпретирует или компилирует байт-код в машинный код, который может быть выполнен на конкретной аппаратной платформе. Например, JVM для Windows преобразует байт-код в инструкции, понятные процессорам на Windows, а JVM для Linux делает то же самое для Linux. Таким образом, вам не нужно писать разные версии программы для каждой операционной системы — достаточно написать код один раз, а JVM позаботится об остальном.
Но чтобы запустить Java-программу, вам нужно больше, чем просто JVM. Здесь появляются JRE и JDK.
JVM: Сердце Java
JVM (Java Virtual Machine) — это виртуальная машина, которая исполняет байт-код Java-программ. Она является ключевым компонентом, обеспечивающим кроссплатформенность.
JVM выполняет несколько важных функций:
Интерпретация и JIT-компиляция: JVM может интерпретировать байт-код построчно или использовать JIT-компилятор (Just-In-Time), чтобы преобразовать байт-код в машинный код для повышения производительности.
Управление памятью: JVM включает сборщик мусора (Garbage Collector), который автоматически освобождает память, занятую объектами, которые больше не используются.
Безопасность: JVM предоставляет песочницу (sandbox), которая ограничивает доступ программ к системным ресурсам, что делает Java-программы безопасными.
JVM — это, по сути, "переводчик" между вашим байт-кодом и конкретной аппаратной платформой. Без JVM Java-программа не сможет работать.
#Java #для_новичков #beginner
Что такое Java?
Java — это высокоуровневый, объектно-ориентированный язык программирования, созданный компанией Sun Microsystems (ныне принадлежит Oracle) в 1995 году. Главная идея Java — "Write Once, Run Anywhere" (Напиши один раз, запускай везде). Это значит, что программа, написанная на Java, может работать на любом устройстве или операционной системе, где есть подходящая среда выполнения.
Java используется повсеместно: от веб-приложений и мобильных приложений (например, Android) до серверных систем, больших корпоративных проектов и даже встраиваемых устройств, таких как "умные" телевизоры или IoT-устройства.
Её популярность обусловлена несколькими факторами:
Кроссплатформенность: Работает на Windows, macOS, Linux и других системах.
Надежность: Java имеет строгую типизацию и встроенные механизмы обработки ошибок.
Большое сообщество: Огромное количество библиотек, фреймворков и документации.
Широкая применимость: От небольших скриптов до сложных распределенных систем.
Кроссплатформенность Java
Кроссплатформенность — это способность программы работать на разных операционных системах без необходимости переписывать код. В отличие от языков, таких как C или C++, где код компилируется в машинный код, специфичный для конкретной платформы (например, процессора или ОС), Java использует другой подход.
Когда вы пишете программу на Java, ваш код компилируется не в машинный код, а в байт-код. Это промежуточное представление программы, которое одинаково для всех платформ. Байт-код создается компилятором Java (javac) и сохраняется в файлах с расширением .class. Но сам по себе байт-код не может выполняться напрямую на вашем компьютере. Здесь на сцену выходит JVM — виртуальная машина Java.
JVM (Java Virtual Machine) интерпретирует или компилирует байт-код в машинный код, который может быть выполнен на конкретной аппаратной платформе. Например, JVM для Windows преобразует байт-код в инструкции, понятные процессорам на Windows, а JVM для Linux делает то же самое для Linux. Таким образом, вам не нужно писать разные версии программы для каждой операционной системы — достаточно написать код один раз, а JVM позаботится об остальном.
Но чтобы запустить Java-программу, вам нужно больше, чем просто JVM. Здесь появляются JRE и JDK.
JVM: Сердце Java
JVM (Java Virtual Machine) — это виртуальная машина, которая исполняет байт-код Java-программ. Она является ключевым компонентом, обеспечивающим кроссплатформенность.
JVM выполняет несколько важных функций:
Интерпретация и JIT-компиляция: JVM может интерпретировать байт-код построчно или использовать JIT-компилятор (Just-In-Time), чтобы преобразовать байт-код в машинный код для повышения производительности.
Управление памятью: JVM включает сборщик мусора (Garbage Collector), который автоматически освобождает память, занятую объектами, которые больше не используются.
Безопасность: JVM предоставляет песочницу (sandbox), которая ограничивает доступ программ к системным ресурсам, что делает Java-программы безопасными.
JVM — это, по сути, "переводчик" между вашим байт-кодом и конкретной аппаратной платформой. Без JVM Java-программа не сможет работать.
#Java #для_новичков #beginner
👍3
JRE: Среда выполнения
JRE (Java Runtime Environment) — это среда выполнения Java, которая включает в себя всё необходимое для запуска Java-программ.
JRE состоит из:
JVM: Виртуальная машина, о которой мы только что говорили.
Библиотеки Java: Стандартные классы и API (например, для работы с файлами, сетью, графикой).
Дополнительные компоненты: Например, средства для загрузки классов и управления безопасностью.
Если вы хотите просто запускать Java-программы (например, запустить готовое приложение, такое как IDE или сервер), вам достаточно установить JRE. Однако JRE не включает инструменты для разработки — для этого нужен JDK.
JDK: Набор для разработки
JDK (Java Development Kit) — это комплект инструментов для разработки Java-программ.
JDK включает в себя всё, что есть в JRE, плюс дополнительные утилиты для программистов:
Компилятор (javac): Преобразует исходный код на Java в байт-код.
Отладчик (jdb): Помогает находить и исправлять ошибки в коде.
Инструменты для создания документации (javadoc): Генерирует документацию из комментариев в коде.
Другие утилиты: Например, jar для создания архивов Java.
JDK — это то, что вам нужно установить, если вы хотите писать и компилировать свои Java-программы. Без JDK вы не сможете превратить ваш код (файлы с расширением .java) в исполняемый байт-код.
Как всё это связано?
Давайте разберем процесс работы Java-программы:
Вы пишете код на Java в файле с расширением .java (например, HelloWorld.java).
С помощью компилятора из JDK (javac) ваш код компилируется в байт-код (файл .class).
Байт-код передается в JVM, которая является частью JRE.
JVM интерпретирует или компилирует байт-код в машинный код, который выполняется на вашей системе.
Вот простая схема:
Зачем это новичку?
Понимание JVM, JRE и JDK важно, чтобы вы могли правильно настроить свою рабочую среду и понимать, как работает ваша программа.
Вот несколько практических советов:
Установите JDK: Если вы начинаете учить Java, скачайте и установите JDK с официального сайта Oracle или используйте OpenJDK (бесплатная альтернатива). JRE уже будет включена в JDK.
Проверьте версию: Убедитесь, что вы используете актуальную версию Java (на момент 2025 года это, например, Java 17 или новее). Команда java -version в терминале покажет, какая версия JRE установлена, а javac -version — версия JDK.
Настройте IDE: Для удобной разработки используйте среды, такие как IntelliJ IDEA, Eclipse или VS Code с плагинами для Java.
#Java #для_новичков #beginner
JRE (Java Runtime Environment) — это среда выполнения Java, которая включает в себя всё необходимое для запуска Java-программ.
JRE состоит из:
JVM: Виртуальная машина, о которой мы только что говорили.
Библиотеки Java: Стандартные классы и API (например, для работы с файлами, сетью, графикой).
Дополнительные компоненты: Например, средства для загрузки классов и управления безопасностью.
Если вы хотите просто запускать Java-программы (например, запустить готовое приложение, такое как IDE или сервер), вам достаточно установить JRE. Однако JRE не включает инструменты для разработки — для этого нужен JDK.
JDK: Набор для разработки
JDK (Java Development Kit) — это комплект инструментов для разработки Java-программ.
JDK включает в себя всё, что есть в JRE, плюс дополнительные утилиты для программистов:
Компилятор (javac): Преобразует исходный код на Java в байт-код.
Отладчик (jdb): Помогает находить и исправлять ошибки в коде.
Инструменты для создания документации (javadoc): Генерирует документацию из комментариев в коде.
Другие утилиты: Например, jar для создания архивов Java.
JDK — это то, что вам нужно установить, если вы хотите писать и компилировать свои Java-программы. Без JDK вы не сможете превратить ваш код (файлы с расширением .java) в исполняемый байт-код.
Как всё это связано?
Давайте разберем процесс работы Java-программы:
Вы пишете код на Java в файле с расширением .java (например, HelloWorld.java).
С помощью компилятора из JDK (javac) ваш код компилируется в байт-код (файл .class).
Байт-код передается в JVM, которая является частью JRE.
JVM интерпретирует или компилирует байт-код в машинный код, который выполняется на вашей системе.
Вот простая схема:
Исходный код (.java) → Компилятор (javac, часть JDK) → Байт-код (.class) → JVM (часть JRE) → Выполнение на устройстве
Зачем это новичку?
Понимание JVM, JRE и JDK важно, чтобы вы могли правильно настроить свою рабочую среду и понимать, как работает ваша программа.
Вот несколько практических советов:
Установите JDK: Если вы начинаете учить Java, скачайте и установите JDK с официального сайта Oracle или используйте OpenJDK (бесплатная альтернатива). JRE уже будет включена в JDK.
Проверьте версию: Убедитесь, что вы используете актуальную версию Java (на момент 2025 года это, например, Java 17 или новее). Команда java -version в терминале покажет, какая версия JRE установлена, а javac -version — версия JDK.
Настройте IDE: Для удобной разработки используйте среды, такие как IntelliJ IDEA, Eclipse или VS Code с плагинами для Java.
#Java #для_новичков #beginner
👍5
Что выведет код?
#Tasks
import java.util.Optional;
public class Task180725 {
public static void main(String[] args) {
Optional<Object> opt = Optional.of("Java")
.filter(s -> s.startsWith("J"))
.map(s -> null)
.or(() -> Optional.of("Fallback"));
System.out.println(opt.get());
}
}
#Tasks
👍3
Варианты ответа:
Anonymous Quiz
29%
"Fallback"
21%
"Java"
36%
NullPointerException
14%
NoSuchElementException
👍4
Продолжаем выбирать темы для разбора и голосовать за рассмотрение предложенных! 🤓
Голосуем за тему к рассмотрению в эти выходные!
Предлагаем новую тему!
(можете предложить что-то из того, что предлагали на прошлой и позапрошлых неделях и что проиграло в голосовании!)
Не стесняемся!✌️
Голосуем за тему к рассмотрению в эти выходные!
Предлагаем новую тему!
(можете предложить что-то из того, что предлагали на прошлой и позапрошлых неделях и что проиграло в голосовании!)
Не стесняемся!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Что такое native методы в Java? 🤓
Ответ:
Ключевое слово native обозначает методы, реализованные на языке C/C++ через JNI (Java Native Interface). Используются для доступа к системным ресурсам.
Пример:
public class NativeExample {
native void print();
static { System.loadLibrary("NativeLib"); }
}
Требует компиляции нативного кода и загрузки библиотеки. Используется редко, но важен для интеграции с низкоуровневыми API.
#собеседование
Ответ:
Пример:
public class NativeExample {
native void print();
static { System.loadLibrary("NativeLib"); }
}
Требует компиляции нативного кода и загрузки библиотеки. Используется редко, но важен для интеграции с низкоуровневыми API.
#собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
С 12.07 по 18.07
Предыдущий пост(с 05.07 по 11.07)
Воскресный мотивационный пост:
Мое обращение к Вам
Выбранная голосованием тема:
Maven в IntelliJ IDEA: Встроенный Maven и его роль
Запись встреч/видео:
не проводились
Обучающие статьи:
Комментарии в Java
Ключевые слова и зарезервированные слова в Java
Введение в Java
Подробная инструкция по установке Maven на Windows
Установка Maven на Linux
Полезные статьи и видео:
Hibernate Best Practices для начинающих
Неблокирующий вызов внешнего сервиса в процессе
Посмеяться
Как и всегда, задачи можно найти под тегом - #Tasks, вопросы с собеседований - #собеседование
#memory
Предыдущий пост(с 05.07 по 11.07)
Воскресный мотивационный пост:
Мое обращение к Вам
Выбранная голосованием тема:
Maven в IntelliJ IDEA: Встроенный Maven и его роль
Запись встреч/видео:
не проводились
Обучающие статьи:
Комментарии в Java
Ключевые слова и зарезервированные слова в Java
Введение в Java
Подробная инструкция по установке Maven на Windows
Установка Maven на Linux
Полезные статьи и видео:
Hibernate Best Practices для начинающих
Неблокирующий вызов внешнего сервиса в процессе
Посмеяться
Как и всегда, задачи можно найти под тегом - #Tasks, вопросы с собеседований - #собеседование
#memory
👍3
Minecraft Forge API 1.16.5
Что такое Forge?
Forge - загрузчик модов в Minecraft, он позволяет быстро и доступно получить доступ к защищённым полям Minecraft.
Установка Forge.
Скачайте Forge MDK 1.16.5 с оф. сайта net.minecraftforge и откройте в IntelliJ.
Установите также плагин Minecraft Development.
Подготовка.
Установите SDK - Java 8 ( OpenJDK / Correto )
Дождитесь инициализации проекта.
Начало.
Запуск клиента происходит так: справа сверху где запуск выберите runClient, и запустите.
Основной класс мода должен содержать:
@Mod("examplemod") - указание ModLoader'у что этот класс основной для Forge. ( examplemod - MODID который указывается по умолчанию в forge mdk)
MinecraftForge.EVENT_BUS.register(this); - регистрирует данный класс для прослушивания ивентов ( т.е если используется прослушивание то зарегистрировать класс что он прослушивает ивенты .)
Перейдём к аннотациям, а точнее к прослушивании ивентов.
Аннотация: @SubscribeEvent
Для чего? - просушивать ивенты ( события игры )
Практика.
Аннотация @SubscribeEvent выполняет прослушку в этом примере: TickEvent.PlayerTickEvent.
Данный ивент позволяет делать почти все что угодно с игроком ( поворот головы, тела, телепортация, скорость и т.д)
Также существуют множество ивентов по типу:
RenderNameplateEvent, RenderGameOverlayEvent, TickEvent.RenderTickEvent, ну и так далее.
Статья написана @forgehook
Что такое Forge?
Forge - загрузчик модов в Minecraft, он позволяет быстро и доступно получить доступ к защищённым полям Minecraft.
Установка Forge.
Скачайте Forge MDK 1.16.5 с оф. сайта net.minecraftforge и откройте в IntelliJ.
Установите также плагин Minecraft Development.
Подготовка.
Установите SDK - Java 8 ( OpenJDK / Correto )
Дождитесь инициализации проекта.
Начало.
Запуск клиента происходит так: справа сверху где запуск выберите runClient, и запустите.
Основной класс мода должен содержать:
@Mod("examplemod")
public class Main {
public Main() {
MinecraftForge.EVENT_BUS.register(this);
}
}
@Mod("examplemod") - указание ModLoader'у что этот класс основной для Forge. ( examplemod - MODID который указывается по умолчанию в forge mdk)
MinecraftForge.EVENT_BUS.register(this); - регистрирует данный класс для прослушивания ивентов ( т.е если используется прослушивание то зарегистрировать класс что он прослушивает ивенты .)
Перейдём к аннотациям, а точнее к прослушивании ивентов.
Аннотация: @SubscribeEvent
Для чего? - просушивать ивенты ( события игры )
Практика.
@SubscribeEvent
public void onTick(TickEvent.PlayerTickEvent event) {}
Аннотация @SubscribeEvent выполняет прослушку в этом примере: TickEvent.PlayerTickEvent.
Данный ивент позволяет делать почти все что угодно с игроком ( поворот головы, тела, телепортация, скорость и т.д)
Также существуют множество ивентов по типу:
RenderNameplateEvent, RenderGameOverlayEvent, TickEvent.RenderTickEvent, ну и так далее.
Статья написана @forgehook