Библиотека джависта | Java, Spring, Maven, Hibernate
24.9K subscribers
1.86K photos
38 videos
42 files
2.64K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Обратная связь: @proglibrary_feedback_bot

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

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
План подготовки к собеседованию на позицию Java разработчика

Каждый раз, готовясь к собеседованиям на позицию «Java разработчик», я понимаю, что мне бы очень помог конкретный план подготовки. Поэтому все свои записи, накопившиеся в ходе прохождения собеседований, было решено структурировать и опубликовать. Надеюсь, кому-то этот план будет полезен.

Смотреть статью
Небольшая задачка

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

Решение на картинке.
Метод Collections.shuffle

Метод shuffle() случайным образом перемешивает все элементы переданного списка.
Построение графиков в Java

Данный видеоролик познакомит вас с основами построения графиков на языке Java

Смотреть видео
#вопросы_с_собеседований
Что произойдет с объектом Exception после обработки исключения?

Объект-исключение будет удален при следующей сборке мусора.
#вопросы_с_собеседований
Каковы ограничения для полей и методов интерфейса?

Интерфейс может объявлять поля, но они неявно объявляются как public, static и final, даже если вы не указываете эти модификаторы. Следовательно, вы не можете явно определить поле интерфейса как приватное. По сути, интерфейс может иметь только поля-константы, а не поля-экземпляры.

Все методы интерфейса также неявно объявлены public. Они также могут быть (неявно) abstract или default.
Зачем нужны профили в Spring?

При разработке приложений мы обычно имеем дело с несколькими средами, такими как Dev, QA и Prod. Свойства конфигурации для этих сред отличаются.

Например, мы можем использовать встроенную базу данных H2 для Dev, но Prod может использовать проприетарную базу данных Oracle или DB2. Даже если СУБД одинакова во всех средах, URL-адреса определенно будут разными.

Чтобы сделать это простым и понятным, Spring предоставляет профили, помогающие разделить конфигурацию для каждой среды.Таким образом, вместо того, чтобы поддерживать это программно, свойства можно хранить в отдельных файлах, таких как application-dev.properties и application-prod.properties. По умолчанию application.properties указывает на текущий активный профиль с помощью spring.profiles.active, чтобы подобрать правильную конфигурацию.

Больше узнать о профилях в Spring можно по ссылке: https://www.baeldung.com/spring-profiles
Сжатие указателей в Java

В статье речь пойдет о реализации сжатия указателей в Java Virtual Machine 64-bit, которое контролируется опцией UseCompressedOops и включено по-умолчанию для 64 битных систем начиная с Java SE 6u23.

Смотреть статью
GraphQL: сложность запросов

Всем привет! Меня зовут Олег Негрозов, я бэкенд-разработчик из команды Talantix. В мире GraphQL есть один минус, который одновременно является и плюсом — пользователь ограничен лишь описанной схемой. Он может попросить у сервера все данные, доступные ему, или написать такой сложный запрос, который будет выполняться целую вечность. О том, как защититься от этого и ограничить свои API, я расскажу в сегодняшней статье.

https://habr.com/ru/companies/hh/articles/705512/
👩‍💻 Java. Представление отрицательных чисел. Преобразование цветной фотографии в черно-белую.

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

https://youtu.be/WG0mS-o1zSA
Please open Telegram to view this post
VIEW IN TELEGRAM
#вопросы_с_собеседований
Как получить коллекцию только для чтения?

При помощи:
Collections.unmodifiableList(list);
Collections.unmodifiableSet(set);
Collections.unmodifiableMap(map).
Эти методы принимают коллекцию в качестве параметра, и возвращают коллекцию только для чтения с теми же элементами внутри.
#вопросы_с_собеседований
Напишите однопоточную программу, которая заставляет коллекцию выбросить ConcurrentModificationException.

Вопрос с подвохом: ConcurrentModificationException к многопоточности никакого отношения не имеет. Возникает эта штука тогда, когда мы пытаемся модифицировать коллекцию во время итерирования по ней.
#вопросы_с_собеседований
Что такое литералы?

Литералы — это явно заданные значения в коде программы, константы определенного типа, которые находятся в коде в момент запуска.

В классе на картинке “Hello world!” и 0b11...10 — литералы, a — переменная.

Литералы бывают разных типов, которые определяются их назначением и способом написания.
Что такое UML?

UML – это унифицированный графический язык моделирования для описания, визуализации, проектирования и документирования объектно-ориентированных систем. UML призван поддерживать процесс моделирования на основе объектно-ориентированного подхода, организовывать взаимосвязь концептуальных и программных понятий, отражать проблемы масштабирования сложных систем.

Отличительной особенностью UML является то, что словарь этого языка образуют графические элементы. Каждому графическому символу соответствует конкретная семантика, поэтому модель, созданная одним человеком, может однозначно быть понята другим человеком или программным средством, интерпретирующим UML. Отсюда, в частности, следует, что модель системы, представленная на UML, может автоматически быть переведена на объектно-ориентированный язык программирования, то есть, при наличии хорошего инструментального средства визуального моделирования, поддерживающего UML, построив модель, мы получим и заготовку программного кода, соответствующего этой модели.
Поиск позиции для вставки числового элемента в массив

Есть небольшой интересный прием, позволяющий найти позицию, в которую запрошенный элемент может быть вставлен в отсортированный массив.
Что вы подразумеваете под анонимным классом?

Анонимный внутренний класс в Java не имеет имени и создает только один объект.