Библиотека собеса по Java | вопросы с собеседований
الذهاب إلى القناة على Telegram
Вопросы с собеседований по Java и ответы на них. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/08c603b6 Для обратной связи: @proglibrary_feeedback_bot
إظهار المزيد6 491
المشتركون
-224 ساعات
+97 أيام
+1830 أيام
أرشيف المشاركات
Улучшение логирования с использованием Java Logging API
Java предоставляет мощные инструменты для логирования, позволяя разработчикам легко отслеживать и управлять выводом логов.
Использование Java Logging API (java.util.logging) позволяет гибко настраивать и контролировать логирование в ваших приложениях.
❗️Вакансии «Библиотеки программиста» — ждем вас в команде!
Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем:
👉авторов в наше медиа proglib.io
👉контент-менеджеров для ведения телеграм-каналов
Подробности тут.
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Ждем ваших откликов 👾
Вложенные в интерфейсы классы
Вложенный (nested) в интерфейс класс является открытым (public) и статическим (static) даже без явного указания этих модификаторов. Помещая класс внутрь интерфейса, мы показываем, что он является неотъемлемой частью API этого интерфейса и более нигде не используется.
Поскольку такой класс является статическим, мы можем создать его экземпляр, не ссылаясь на объект объемлющего класса, а лишь указывая тип внешнего интерфейса или реализующего его класса.
Colorable.Color color = new Colorable.Color(0, 0, 0);
color = new Triangle.Color(255, 255, 255);
Самым, наверное, известным примером этой идиомы является класс Map.Entry, содержащий пары ключ-значение ассоциативного словаря.
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Final класс
Нельзя расширять класс, объявленный как final. Проще говоря, никакой класс не может наследоваться от данного.
Прекрасным примером final класса в JDK является String. Первый шаг к созданию неизменяемого класса — пометить его как final, и тогда нельзя будет его расширить.
В чём заключается различие между методами submit() и execute() у пула потоков?
Оба метода являются способами подачи задачи в пул потоков, но между ними есть небольшая разница.
execute(Runnable command) определён в интерфейсе Executor и выполняет поданную задачу и ничего не возвращает.
submit() — перегруженный метод, определённый в интерфейсе ExecutorService. Способен принимать задачи типов Runnable и Callable и возвращать объект Future, который можно использовать для контроля и управления процессом выполнения, получения его результата.
Если кодите на Java больше 4 лет, залетайте на мероприятие Java от T-Банка, так проще познакомиться с командой. Вот что вас ждет:
17 июля — встречи, доклады и открытый микрофон от экспертов. Узнаете, как устроена Java-разработка в Т-Банке.
27 и 28 июля — Weekend offer. Сможете пройти собеседование и познакомиться с командой на неделе. Если все понравится — оффер ваш.
Узнайте больше и оставьте заявку на Weekend offer до 24 июля
erid:2Vtzquwn1pc
Реклама. АО "Тинькофф Банк", ИНН 7710140679, лицензия ЦБ РФ № 2673
Оптимизация сборщика мусора с помощью -XX:+UseG1GC
Java предоставляет множество возможностей для оптимизации производительности приложений.
✔️ Одной из таких возможностей является использование современного сборщика мусора G1 (Garbage First), который улучшает работу приложений с большим объемом данных и снижает задержки.
➡️ Чтобы включить использование G1GC, необходимо добавить флаг -XX:+UseG1GC при запуске Java-приложения:
java -XX:+UseG1GC G1GCExample
Метод compareTo()
В Java метод compareTo() получает значение 0, если аргумент является строкой лексически равной данной строке; значение меньше 0, если аргумент является строкой лексически большей, чем сравниваемая строка; и значение больше 0, если аргумент является строкой лексически меньшей этой строки.
Что такое ViewResolver в Spring?
Реализации ViewResolver используются для разрешения страниц просмотра по имени. Мы настраиваем его в файле конфигурации bean-компонента spring. Пример на картинке.
InternalResourceViewResolver — это одна из реализаций интерфейса ViewResolver, и мы предоставляем каталог страниц просмотра и местоположение через свойства компонента. Таким образом, если метод обработчика контроллера возвращает «home», view resolver будет использовать страницу представления, расположенную по адресу /WEB-INF/views/home.jsp.
Если equals() переопределен, есть ли какие-либо другие методы, которые следует переопределить?
Равные объекты должны возвращать одинаковые хэш коды. При переопределении equals() нужно обязательно переопределять и метод hashCode().
Как конвертировать массив в список?
Используется метод Arrays.asList(), который преобразует массив в список.
В чем разница между struct и class?
Ответ: Практически ни в чем. В struct модификаторы доступа по умолчанию public, в class private. Также отличается и наследование по умолчанию, у struct — public, у class — private.
🎓 Продвинутый SQL: секреты профессионалов
Рассказываем о сложных стратегиях оптимизации запросов, продвинутых типах соединений и тонкостях использования SELECT.
Читать статью
#туториал
Локальные переменные в лямбда-выражениях
Java позволяет использовать локальные переменные внутри лямбда-выражений, но с одним важным ограничением: переменные должны быть эффективно финальными (effectively final).
Это означает, что после их инициализации переменные не могут быть изменены.
Использование локальных переменных в лямбда-выражениях может быть очень полезным для передачи дополнительных данных в лямбда-выражения
Оператор instanceof
Оператор java instanceof используется для проверки того, является ли объект экземпляром указанного типа (класса или подкласса или интерфейса). Во время выполнения результат оператора instanceof равен true, если значение выражения не равно null.
Это важное свойство операции instanceof, которое делает ее полезной для проверки приведения типов.
Ответьте на 3 вопроса, чтобы получить вводные занятия к курсу «Алгоритмы и структуры данных»
🔥Получите вводные занятия, ответив на 3 вопроса – https://proglib.io/w/caded0eb
На вводной части вас ждут:
1. Лекция «Производительность алгоритмов» от руководителя разработки Яндекс.Самокатов
2. Лекция «Итеративные сортировки и линейные сортировки» от аспирант департамента искусственного интеллекта ВШЭ
3. Практические задания после лекций
4. Ссылки на дополнительные материалы для самостоятельного изучения
⚡️Переходите и начинайте учиться уже сегодня – https://proglib.io/w/caded0eb
Объединение строк с помощью String.join
Часто возникает необходимость объединять несколько строк в одну, используя определенный разделитель.
До Java 8 это обычно делалось с помощью цикла и объекта StringBuilder. С появлением метода String.join, эта задача стала намного проще и лаконичнее.
Использование метода String.join значительно упрощает задачу объединения строк с разделителем, делая код более читаемым и сокращая количество кода, которое нужно написать и поддерживать.
🎭 Bytemask \\
Bytemask — плагин Gradle для Android, который маскирует секретные строки приложения в исходном коде, затрудняя их извлечение с помощью реверс-инжиниринга. Он шифрует строки во время компиляции с помощью ключа подписи приложения и расшифровывает во время выполнения.
Ссылка на Github
#полезное #библиотека
Работа с коллекциями с помощью Streams
Java Streams позволяют легко и эффективно работать с коллекциями данных, такими как списки, используя функциональный подход.
👀 Этот простой пример показывает, как с помощью Streams можно легко фильтровать и преобразовывать данные в коллекциях, делая код более лаконичным и понятным.
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
