Java Learning – Telegram
Java Learning
18.3K subscribers
1.62K photos
2 videos
3 files
1K links
№ 5079899194

Обучающий канал по Java

Ссылка для друга - https://news.1rj.ru/str/+ZEYYht6-46w5MDM6

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Java_per_month
Download Telegram
⚙️ Cleaner.register()

Cleaner.register() позволяет выполнять код очистки перед удалением объекта сборщиком мусора. Это полезно для освобождения нативных ресурсов без явного вызова close().

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
⚙️ LockSupport.parkNanos()

LockSupport.parkNanos() позволяет приостанавливать поток на заданное количество наносекунд, обеспечивая более точный контроль пауз по сравнению с Thread.sleep().

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
⚙️ Arrays.mismatch()

Arrays.mismatch() сравнивает два массива и возвращает индекс первого несовпадающего элемента. Это полезно для эффективного поиска различий между данными.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
⚙️ Long.divideUnsigned()

Long.divideUnsigned() позволяет выполнять деление беззнаковых (unsigned) целых чисел, избегая проблем с интерпретацией отрицательных значений в long.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Что будет выведено при выполнении кода?

Пояснение
⬇️
Метод remove(1) удаляет элемент с индексом 1, то есть "B". Оставшиеся элементы "A" и "C" сдвигаются влево. Итоговый список: [A, C]. Код выполняется без ошибок.


Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤‍🔥2
⚙️ ProcessHandle.parent()

ProcessHandle.parent() позволяет получить родительский процесс текущего процесса. Это полезно для мониторинга запущенных процессов и управления зависимыми процессами.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
🚫 Антипаттерн недели: Неиспользование break в switch-case

В Java оператор switch-case не прерывается автоматически, и если не добавить break, выполнение продолжится к следующему case, что может привести к неожиданному поведению.

✔️ Добавляйте break для предотвращения "проваливания" в следующий case.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
⚙️ VarHandle.compareAndSet

VarHandle.compareAndSet() позволяет безопасно изменять значения переменной в многопоточной среде, проверяя текущее значение перед обновлением. Это полезно для lock-free алгоритмов.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
⚙️ ClassLoader.getDefinedPackages()

ClassLoader.getDefinedPackages() (Java 9+) позволяет получить список всех пакетов, загруженных текущим загрузчиком классов. Это полезно для анализа модулей, изоляции зависимостей и динамической загрузки.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
⚙️ ClassValue.computeValue()

ClassValue.computeValue() позволяет хранить и кэшировать данные, ассоциированные с конкретным классом. Это полезно для метапрограммирования, создания фреймворков и кеширования рефлексивной информации.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
⚙️ Character.codePointCount()

Character.codePointCount() возвращает количество Unicode кодпоинтов в строке между двумя индексами. Это полезно при работе с текстом, содержащим символы за пределами Basic Multilingual Plane (например, эмодзи или редкие иероглифы), которые занимают два char в UTF-16.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6😱1
⚙️ Integer.parseUnsignedInt()

Integer.parseUnsignedInt() позволяет разобрать беззнаковое целое число из строки, даже если оно превышает диапазон обычного int (то есть больше 2^31 - 1). Это полезно при работе с бинарными форматами, сетевыми протоколами и низкоуровневыми API.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
⚙️ ThreadGroup.enumerate()

ThreadGroup.enumerate() позволяет получить список всех потоков в группе. Это полезно для мониторинга, отладки и управления группами связанных потоков.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
⚙️ Class.getEnclosingMethod()

Class.getEnclosingMethod() возвращает метод, в котором был определён локальный или анонимный класс. Это полезно для анализа структуры кода во время выполнения, например, при логировании или рефлексии.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1
Что будет выведено при выполнении кода?

Пояснение
⬇️
Оператор == сравнивает ссылки, и a и b указывают на разные объекты, поэтому результат — false. Метод equals() сравнивает значения строк, которые совпадают, поэтому возвращает true.


Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
⚙️ ProcessHandle.descendants()

ProcessHandle.descendants() возвращает поток потомков (дочерних процессов) данного процесса. Это полезно для мониторинга и управления иерархией процессов, например, при запуске подпроцессов через ProcessBuilder.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
⚙️ Character.getType()

Character.getType() возвращает тип символа по его Unicode-категории, например, буква, цифра, пунктуация и т.д. Это полезно для фильтрации и анализа текста, особенно в мульти-язычных или валидационных системах.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤‍🔥2