Библиотека собеса по Java | вопросы с собеседований
6.38K subscribers
359 photos
4 videos
200 links
Вопросы с собеседований по Java и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/08c603b6

Работать у нас: https://job.proglib.io/

Наши каналы: https://yangx.top/proglibrary/9197
加入频道
Класс Properties

Класс Properties — это подкласс Hashtable. Он используется для хранения списков значений, в которых ключ является String, а значение также является String.

Класс Properties используется множеством других классов. Например, это тип объекта, возвращаемый System.getProperties(), когда тот получает внешние значения.

Properties определяет следующие переменную экземпляра. Эта переменная содержит список свойств по умолчанию, связанный с объектом Properties.

Следующая программа показывает несколько методов, поддерживаемых этой структурой данных.
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы

🤖Про нейросети
Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей
Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка
Библиотека нейротекста | ChatGPT, Gemini, Bing
Библиотека нейровидео | Sora AI, Runway ML, дипфейки
Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion

#️⃣C#

Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

Java

Книги для джавистов | Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ
Аргументы командной строки

Аргументы командной строки передается методу main в виде массива строк (String[] args). Когда вы запускаете программу Java из командной строки, вы можете передать дополнительные параметры после имени класса. Эти параметры будут доступны в виде элементов массива args.
Что такое стирание типов?

Стирание типов (type erasure) — это процесс, при котором информация о типах параметризованных типов (generic types) удаляется во время компиляции и не сохраняется во время выполнения программы.
Что такое цепочка конструкторов?

Цепочка конструкторов — это процесс вызова одного конструктора из другого по отношению к текущему объекту. Цепочка конструкторов возможна только в устаревших версиях, когда конструктор подкласса отвечает за вызов конструктора суперкласса первым. В цепочке конструкторов может быть любое количество классов. Цепочка конструкторов может быть достигнута двумя способами:

1) В том же классе, используя this().
2) Из базового класса с использованием super().
Приведите пример, когда какая-либо коллекция выбрасывает UnsupportedOperationException.

В примере возникает ошибка, потому что Collections.emptyList() возвращает пустой список без возможности добавления элементов.
Условия в блокировках

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

Условия могут использоваться для предотвращения «голодания» некоторых потоков или для более эффективного управления блокировками.
Хардкорный курс по математике для тех, кто правда любит математику!

Начать с вводных занятий можно здесь, ответив всего на 4 вопроса – https://proglib.io/w/12f47906

Что вас ждет:

– Вводный урок от CPO курса

– Лекции с преподавателями ВМК МГУ по темам: теория множеств, непрерывность функции, основные формулы комбинаторики, матрицы и операции над ними, градиентный спуск

– Практические задания для закрепления материала и ссылки на дополнительные материалы.

⚡️ Переходите и начинайте учиться уже сегодня – https://proglib.io/w/12f47906
Please open Telegram to view this post
VIEW IN TELEGRAM
Что такое JAXP?

Ответ: JAXP, The Java API for XML Processing (Java API для обработки XML) — набор API, упрощающих обработку XML данных в программах написанных на Java. Содержит реализации DOM, SAX и StAX парсеров, поддерживает XSLT и возможность работать с DTD.
Что делает ключевое слово new?

Ключевое слово new используется для создания нового объекта. Оно всегда используется в сочетании с именем класса, к которому принадлежит создаваемый объект. Например, чтобы создать новый объект класса String, мы можем написать код, как на картинке.

В этом примере переменная str будет ссылаться на новый объект класса String. По умолчанию, новый объект будет инициализирован значениями по умолчанию для своего типа. Например, объект класса String будет содержать пустую строку.
Где должны располагаться статические (css, js, html) ресурсы в Spring MVC приложении?

Ответ: расположение статических ресурсов можно настроить. В документации Spring Boot рекомендуется использовать /static, или /public, или /resources, или /META-INF/resources.
Jackson-dataformat-csv

Jackson-dataformat-csv — это библиотека Java, являющаяся модулем расширения популярной библиотеки Jackson для обработки JSON. Она позволяет читать и записывать данные в формате CSV (Comma Separated Values), который широко используется для хранения и обмена табличными данными.
Объясните принципы работы и использование Future и Callable в Java для выполнения асинхронных задач. Приведите пример кода с использованием Future и Callable.

Ответ:

Callable: Представляет собой задачу, которую можно выполнить и получить результат.
Future: Интерфейс, предназначенный для представления результата асинхронной операции. Он позволяет проверять статус завершения задачи, ожидать завершения и получать результат.

Объяснение:

Создание ExecutorService с одним потоком.
ExecutorService executorService = Executors.newSingleThreadExecutor();

Создание объекта Callable, представляющего асинхронную задачу.
Callable<String> callableTask = ...;

Подача задачи на выполнение и получение объекта Future, с помощью которого можно управлять и получать результат асинхронной задачи.
Future<String> future = executorService.submit(callableTask);

Ожидание завершения задачи и получение результата. Если задача еще не завершена, метод get() будет блокировать текущий поток до завершения задачи.
String result = future.get();

Завершение работы ExecutorService после завершения всех задач.
executorService.shutdown();

Примечание:
Использование Callable и Future полезно в ситуациях, когда вы хотите выполнить асинхронную задачу и получить результат её выполнения. Это может быть полезно в приложениях, где необходимо избегать блокировки главного потока ожиданием завершения долгих операций.
SpotBugs

SpotBugs — это бесплатный инструмент статического анализа кода Java, являющийся преемником FindBugs. Он помогает обнаруживать широкий спектр ошибок и потенциальных проблем в коде, таких как нулевые указатели, утечки ресурсов, небезопасное использование API, логические ошибки и неэффективный код.
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Восходящее и нисходящее преобразование

Восходящее преобразование (upcasting) происходит, когда объект или значение преобразуется в тип, который находится выше в иерархии наследования.

Нисходящее преобразование (downcasting) происходит, когда объект или значение преобразуется в тип, который находится ниже в иерархии наследования. Для выполнения нисходящего преобразования необходимо явно привести типы.
Что такое StringJoiner?

Класс StringJoiner используется, чтобы создать последовательность строк, разделенных разделителем с возможностью присоединить к полученной строке префикс и суффикс:

StringJoiner joiner = new StringJoiner(».», «prefix-», «-suffix»);
for (String s : «Hello the brave world».split(» «)) {
joiner.add(s);
}
System.out.println(joiner); //prefix-Hello.the.brave.world-suffix
Cobertura

Cobertura — это инструмент для покрытия кода, который помогает разработчикам Java отслеживать, какие части их кода тестируются. Он работает путем сбора данных о том, какие строки кода выполняются во время тестов, и сравнения этих данных с полным набором строк кода в проекте.
🦾🧠🏋️Качаем мозги к лету!

Курс «Алгоритмы и структуры данных» для тех, кто хочет научиться работать с алгоритмами, подготовиться к собеседованию крупную IT-компанию и начать брать более сложные проекты.

➡️ Алгоритмы и структуры данных 35 990 ₽ 21 594

⭐️ Переходите и активируйте бесплатные вводные занятия курсаhttps://proglib.io/w/da6727d1

Вас ждут:

– 150 практических заданий и 47 видеолекций

– бессрочный доступ к обучению

– поддержка преподавателя в чате

А также очень харизматичный спикер из Яндекса 🙌🏻