Java Developer – Telegram
Java Developer
15.7K subscribers
1.86K photos
138 videos
2 files
2.08K links
Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

Сотрудничество: @bape_ads
Прайс: @bape_media

РКН: https://clck.ru/3GHfTK

Реклама на бирже: https://telega.in/c/java_tg
Download Telegram
6
Что выведет код сверху?
Anonymous Quiz
48%
0 0
7%
1 1
1%
2
44%
Ошибка компиляции
📌 Задача с LeetCode (Power Of Two)

Дано целое число n. Необходимо проверить, является ли число n результатом возведения двойки в степень или же нет.

Целое число n является степенью двойки, если существует целое число x такое, что n == 2^x.

Для того чтобы число было степенью двойки, оно должно быть положительным и иметь только одну установленную битовую единицу.

Выражение (n & (n - 1)) == 0 выполняет побитовое И между числами n и (n - 1). Если результат равен 0, значит в числе n только одна установленная битовая единица.

Таким образом, если число n больше нуля и (n & (n - 1)) равно 0, то метод возвращает true, иначе — false.

Эта задача на YouTube — КЛИК
Эта задача на LeetCode — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
24
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣5471💯1
Вопрос с собеседования

Какие ассоциативные связи между объектами вы знаете?

Ответ: В ООП существует несколько видов ассоциативных связей между объектами: агрегация, композиция, ассоциация, наследование, реализация.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
💯1854
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣5051💯1
👩‍💻 Final класс

Нельзя расширять класс, объявленный как final. Проще говоря, никакой класс не может наследоваться от данного.

Примером final класса в JDK является String. Первый шаг к созданию неизменяемого класса — пометить его как final, и тогда его нельзя будет расширить.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
235💯2
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣637💯32
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣6283💯2
👩‍💻 Делаем свою простейшую систему сборки для Java

Автор статьи рассказывает, как в Java работает компиляция, как по шагам прийти к идее необходимости системы сборки и как написать свою простенькую систему.

Ссылка на статью — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
18👍1
Что выведет код сверху?
Anonymous Quiz
18%
1
28%
2
33%
4
22%
Ошибка компиляции
👩‍💻 Параллельная редукция

Параллельная редукция — это процесс сокращения (редукции) коллекции элементов с использованием параллельных вычислений.

В Java для этого можно использовать параллельные потоки и функциональные интерфейсы, такие как reduce(), collect() и stream().

Использование параллельной редукции имеет смысл только при выполнении тяжелых вычислений или обработки больших коллекций данных.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
126💯1
Вопрос с собеседования

Что такое ThreadPoolExecutor?

Ответ: ThreadPoolExecutor — это класс, который предоставляет управление пулами потоков для выполнения асинхронных задач. Он является частью пакета java.util.concurrent, который предоставляет различные средства для работы с параллельными и асинхронными задачами.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
23💯21
👩‍💻 ExecutorService

ExecutorService — это API JDK, упрощающий запуск задач в асинхронном режиме. В общем смысле, ExecutorService автоматически предоставляет пул потоков и API для назначения задач.

Лучший вариант использования ExecutorService — обработка независимых задач, таких как транзакции или запросы по схеме «один поток для одной задачи».

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
141💯1
👩‍💻 Fail-fast поведение

Fail-fast поведение (fail-fast behavior) — принцип в программировании для быстрого обнаружения и исправления ошибок с целью предотвращения повреждения данных и неправильного поведения программы.

В Java fail-fast поведение реализуется с использованием механизмов — если в процессе выполнения программы обнаруживается нарушение, например, попытка доступа за пределы массива или передача недопустимого аргумента в метод, генерируется исключение, и выполнение программы прерывается.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
181💯1
Вопрос с собеседования

LinkedList — это односвязный, двусвязный или четырехсвязный список?

Ответ: Двусвязный: каждый элемент LinkedList хранит ссылку на предыдущий и следующий элементы.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
225💯2
👩‍💻 Comparator

Comparator — это интерфейс, который используется для реализации произвольной сортировки элементов коллекции.

Чтобы задать свой порядок сортировки, нужно создать класс, реализующий Comparator, а затем переопределить метод compare.

В примере на картинке класс Main реализует интерфейс Comparator для целых чисел Integer и сортирует список чисел в обратном порядке.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
💯139🤣1