Telegram Web
Ответ на "В чем разница между HashMap и WeakHashMap? Для чего используется WeakHashMap?"

В Java существует 4 типа ссылок: сильные (strong reference), мягкие (SoftReference), слабые (WeakReference) и фантомные (PhantomReference). Особенности каждого типа ссылок связаны с работой Garbage Collector. Если объект можно достичь только с помощью цепочки WeakReference (то есть на него отсутствуют сильные и мягкие ссылки), то данный объект будет помечен на удаление.

WeakHashMap - это структура данных, реализующая интерфейс Map и основанная на использовании WeakReference для хранения ключей. Таким образом, пара «ключ-значение» будет удалена из WeakHashMap, если на объект-ключ более не имеется сильных ссылок.

В качестве примера использования такой структуры данных можно привести следующую ситуацию: допустим имеются объекты, которые необходимо расширить дополнительной информацией, при этом изменение класса этих объектов нежелательно либо невозможно. В этом случае добавляем каждый объект в WeakHashMap в качестве ключа, а в качестве значения - нужную информацию. Таким образом, пока на объект имеется сильная ссылка (либо мягкая), можно проверять хэш-таблицу и извлекать информацию. Как только объект будет удален, то WeakReference для этого ключа будет помещен в ReferenceQueue и затем соответствующая запись для этой слабой ссылки будет удалена из WeakHashMap.

#вопросы_с_собеседований
Почему Map не наследуется от Collection?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
Ответ на "Почему Map не наследуется от Collection?"

Это связано с тем, что Map представляет отображение ключ-значение, в то время как Collection представляет коллекцию объектов.

Коллекции работают с объектами на основе их позиции в коллекции, тогда как в Map объекты доступны по ключу. Поэтому операции, определенные в Collection, такие как добавление, получение по индексу и итерация, не имеют смысла для Map.

Вместо этого в Map определены операции для работы с парами ключ-значение, такие как put(), get(), containsKey() и другие. Наследование Map от Collection привело бы к наследованию неподходящих методов.

#вопросы_с_собеседований
Напишите, название книжек, которые вы ищете по Java.
Please open Telegram to view this post
VIEW IN TELEGRAM
Javazavr. Обучение Java.
         for (int i = 2; i <= 100; i++) {
boolean isPrime = true;

for (int j = 2; j < i; j++) {
if (i % j == 0) {
isPrime = false;
break;
}
}

if (isPrime) {
System.out.println(i);
}
}
Forwarded from JavaRocks
Вакансии по Java за последнюю неделю:

Java Developer Junior. Удалённо (РФ), 55–70 т.р.

Java Developer Middle+. Удалённо (РФ), 200–270 т.р.

QA Auto Java (Middle). Удалённо (РФ), 250–380 т.р.

Java Developer. Гибрид (Новосибирск), договорная.

Инженер автотестирования Java. Удалённо, договорная.

👉 Java Rocks | #вакансии
Please open Telegram to view this post
VIEW IN TELEGRAM
#вопросы_с_собеседований

Что такое «фикстуры»?

Фикстуры (fixtures) - состояние среды тестирования, которое требуется для успешного выполнения теста. Основная задача фикстур заключается в подготовке тестового окружения с заранее фиксированным/известным состоянием, чтобы гарантировать повторяемость процесса тестирования.
Forwarded from JavaRocks
Please open Telegram to view this post
VIEW IN TELEGRAM
Используете ли вы в работе более одного языка постоянно? (sgl, html и т.д. не считаются)
Поделитесь какой и в паре с чем
Anonymous Poll
49%
Да
51%
Нет
Как влияет модификатор static на класс/метод/поле?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
Ответ на "Как влияет модификатор static на класс/метод/поле?"

Для класса — позволяет создать static-класс, экземпляры которого создавать нельзя. Используется для создания утилитных классов.

Для метода — делает метод статическим, то есть он может быть вызван без создания экземпляра класса.

Для поля — создает поле, общее для всех экземпляров класса. Статическое поле существует в единственном экземпляре для класса.

Если кратко, static позволяет создавать классы/методы/поля, связанные с классом, а не с экземпляром.
Это удобно, когда нужно реализовать утилитные классы или объекты, общие для всех экземпляров.

#вопросы_с_собеседований
Ребят, давно не спрашивали у вас по контенту. Напишите что нравится, а что нет? Что добавить?
Вакансии по Java за последние 14 дней:

Java разработчик. Удалённо, 260-300 т.р. гросс.

QA Automation Engineer (Java+Selenium) Middle. Удалённо (нахлёст на США), 100–200 т.р.

Автотестировщик Middle. Удалённо (РФ), 10 000 – 14 000 руб/дн по ИП/СЗ.

Java разработчик. Удалённо (РФ), 300–320 т.р..

Software Engineer (Java). Удалённо (не из РФ), 4000 – 6000$ gross.

Senior Java разработчик. Удалённо (РФ), 260–300 т.р. gross.

Fullstack QA JAVA Middle. Удалённо (РФ), от 250 до 390 т.р. gross.

Java разработчик (Middle+). Удалённо (РФ и дружественные страны), 350–370 т.р. на руки.

Middle Java Developer. Удалённо (только РФ или РБ), от 250 т.р. gross.

Senior Full Stack Developer (Java / Javascript). Удалённо (не из РФ), 4500 – 5500$ gross.

#подборка #java
Где и как вы можете использовать приватный конструктор?

Пишите в комментариях ваш вариант. Ответ будет у нас в канале.

#вопросы_с_собеседований
Ответ на "Где и как вы можете использовать приватный конструктор?"

Приватный (помеченный ключевым словом private, скрытый) конструктор может использоваться публичным статическим методом генерации объектов данного класса. Также доступ к нему разрешён вложенным классам и может использоваться для их нужд.

#вопросы_с_собеседований
⚡️ Вакансии по Java за последнюю неделю:

🟧 Java-разработчик Middle+. Удалённо (РФ), 180-200 т.р.

🟧 QA Full stack (Java). Удалённо (РФ), 250-408 т.р.

🟧 QA Full Stack Java. Удалённо (РФ), 315-350 т.р.

🟧 Full Stack Developer (Java / JavaScript). Удалённо, 600-750 т.р.

🟧 Fullstack QA (Java). Офис (Сербия), ЗП договорная
Please open Telegram to view this post
VIEW IN TELEGRAM
2025/06/19 14:10:54
Back to Top
HTML Embed Code: