S
Senior Java Developer
31.08.2026 20:57 · 👁 802
➡️ HikariCP — высокопроизводительный пул соединений для баз данных
HikariCP — это лёгкий и быстрый пул соединений для баз данных, который считается одним из самых производительных в экосистеме Java.
Он минимизирует задержки при подключении к базам данных, обеспечивая быстрый доступ к ресурсам и высокую масштабируемость. Благодаря простоте настройки и высокой производительности, HikariCP является отличным выбором для проектов, где требуется эффективное управление соединениями с базой данных.
🗣 HikariCP — отличный выбор для высоконагруженных приложений, где важна производительность и стабильность соединений с базой данных.
🔗 Ссылочка на доку
S
Senior Java Developer
29.08.2026 20:54 · 👁 1.3K
Встроенные исключения
Java определяет несколько классов исключений внутри стандартного пакета java.lang.
Наиболее общие из этих исключений являются подклассами стандартного типа RuntimeException. Поскольку java.lang неявно импортируется во все java-программы, то большинство исключений, полученных из RuntimeException, автоматические.
Java определяет несколько других типов исключений, которые относятся к его различным библиотекам класса. Ниже приведен список неконтролируемых исключений на этапе выполнения (Unchecked RuntimeException).
S
Senior Java Developer
28.08.2026 20:48 · 👁 1.5K
Инкапсуляция
Инкапсуляция в Java является механизмом обёртывания данных (переменных) и кода, работающего с данными (методами), в одно целое. В инкапсуляции переменные класса будут скрыты от других классов и доступ к ним может быть получен только с помощью метода их текущего класса. По-другому это называется скрытием данных.
Для достижения инкапсуляции в Java:
☕️ Объявите переменные класса как private.
☕️ Предоставьте public к методам установки и получения (сеттеру и геттеру) для изменения и просмотра значений переменных.
Преимущества инкапсуляции:
☕️ Поля класса можно сделать только для чтения или только для записи.
☕️ Класс может иметь полный контроль над тем, что хранится в его полях.
S
Senior Java Developer
27.08.2026 20:18 · 👁 1.6K
#вопросы_с_собеседований
В чем разница между Hashset и Treeset?
Классы HashSet и TreeSet реализуют интерфейс Set и представляют наборы отдельных элементов. Кроме того, TreeSet реализует интерфейс NavigableSet. Этот интерфейс определяет методы, использующие порядок элементов.
HashSet внутренне основан на HashMap, а TreeSet поддерживается экземпляром TreeMap, который определяет их свойства: HashSet не хранит элементы в каком-либо определенном порядке. Итерация по элементам в HashSet проиcходит в перемешанном порядке. TreeSet, с другой стороны, создает элементы по порядку в соответствии с некоторым предопределенным Компаратором.
S
Senior Java Developer
25.08.2026 20:47 · 👁 2K
#вопросы_с_собеседований
Для чего используются ключевые слова volatile, synchronized, transient, native?
volatile вынуждает потоки отключить оптимизацию доступа и использовать единственный экземпляр переменной. Если переменная примитивного типа – этого будет достаточно для обеспечения потокобезопасности. Если же переменная является ссылкой на объект – синхронизировано будет исключительно значение этой ссылки. Все данные, содержащиеся в объекте, синхронизированы не будут!
synchronized — это зарезервированное слово позволяет добиваться синхронизации в помеченных им методах или блоках кода.
Ключевые слова transient и native к многопоточности никакого отношения не имеют, первое используется для указания полей класса, которые не нужно сериализовать, а второе сигнализирует о том, что метод реализован в платформо-зависимом коде.
S
Senior Java Developer
24.08.2026 18:56 · 👁 2.1K
Зубчатый массив в Java
Зубчатый массив — это массив массивов, в котором массивы элементов могут быть разных размеров, т. е. мы можем создать двумерный массив, но с переменным числом столбцов в каждой строке. Эти типы массивов также известны как зубчатые массивы.
Подробнее о зубчатых массивах можно почитать здесь.
S
Senior Java Developer
24.08.2026 16:03 · 👁 1.9K
Вам доклады по Go или Java? VK приглашает на митап с двойной начинкой
26 августа VK собирает Go- и Java-инженеров, чтобы прокачать знания.
В программе два трека — Go и Java, по три доклада в каждом.
Трек Go:
• «Компиляция Go в динамическую либу, или как мы ускорили выкатку фичи в два раза, но нам не понравилось», Михаил Кичигин, бэкенд-разработчик, Avito Tech
• «Go-платформа VK: как мы построили единую основу для создания Go-сервисов», Александр Апанасенко, руководитель команды SDK Backend, VK
• «Почтальон от Kubernetes до Palo Alto. Как осуществляется доставка информации об адресах», Дарья Кулькина, бэкенд-разработчик, Точка Банк
Трек Java:
• «Перформанс-трюки в поисковой платформе Ozon», Пётр Портнов, ведущий разработчик среднего поиска, Ozon
• «Архитектура современного движка платёжной системы и переход к новой архитектуре», Игорь Крикунов, технический лидер разработки DBC, Альфа-Банк
• «Переход от федерации S3-кластеров в пользу коммунального и мультитенантного кластера», Кирилл Боблак, ведущий разработчик One-cloud, VK
А ещё будет мастер-класс по прокачке навыка, который сделает вас звездой любого вечера, и афтепати, чтобы обсудить доклады в неформальной обстановке.
Встречаемся в 17:00, начало в 18:00. Участие бесплатное, регистрация обязательна.
S
Senior Java Developer
24.08.2026 15:10 · 👁 1.5K
#вопросы_с_собеседований
Могут ли у разных объектов быть одинаковые hashCode()?
Да, могут. Метод hashCode() не гарантирует уникальность возвращаемого значения. Ситуация, когда у разных объектов одинаковые хэш коды называется коллизией. Вероятность возникновения коллизии зависит от используемого алгоритма генерации хэш кода.
S
Senior Java Developer
24.08.2026 13:11 · 👁 1.7K
👩💻 Работа с Kafka через библиотеку Kafka Clients
Приглашаем на открытый урок.
🗓 26 августа в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Java разработчик. Продвинутый уровень».
Kafka Clients это нижний уровень для работы с Kafka из Java. Все более высокоуровневые библиотеки основаны на нем.
Данный открытый урок проходит в рамках курса Java разработчик. Продвинутый уровень.
О чем поговорим:
✔️ Чтение и отправка сообщений в Kafka
✔️ Управление топиками
✔️ Разные форматы: текст, JSON, Avro
✔️ Использование транзакций
🔗 Ссылка на регистрацию: https://otus.pw/U2xB/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
S
Senior Java Developer
21.08.2026 20:50 · 👁 1.9K
#вопросы_с_собеседований
Опишите различные типы примитивов и объемы памяти, которые они занимают.
Java имеет 8 примитивных типов:
☕️ boolean — логическое значение true/false. Размер логического значения не определяется спецификацией JVM и может различаться в разных реализациях
☕️ byte — 8-битное значение со знаком
☕️ short — 16-битное значение со знаком
☕️ char — беззнаковое 16-битное значение
☕️ int — 32-битное значение со знаком
☕️ long — 64-битное значение со знаком
☕️ float — 32-битное значение с плавающей запятой одинарной точности, соответствующее стандарту IEEE 754
☕️ double — 64-битное значение с плавающей запятой двойной точности, соответствующее стандарту IEEE 754