Semaphore
Semaphore — это класс, который позволяет ограничивать количество потоков, одновременно работающих с каким-либо ресурсом.
Поток должен получить разрешение, чтобы войти в критическую секцию.
Если разрешений нет, поток ставится в очередь до освобождения.
Метод
Java Learning 👩💻
Semaphore — это класс, который позволяет ограничивать количество потоков, одновременно работающих с каким-либо ресурсом.
Поток должен получить разрешение, чтобы войти в критическую секцию.
Semaphore
управляет набором разрешений (permits), а конструктор принимает количество разрешений.Если разрешений нет, поток ставится в очередь до освобождения.
Метод
acquire()
получает разрешение, release()
— освобождает.Java Learning 👩💻
ZipFile
Java Learning 👩💻
ZipFile
— это класс, который используется для чтения содержимого ZIP-архивов. Он позволяет вам перебирать записи в архиве, получать информацию о них и извлекать их содержимое.Java Learning 👩💻
В Java метод
HashMap.getOrDefault()
возвращает значение для заданного ключа, если он существует, или значение по умолчанию, если ключ отсутствует. Это удобный способ избежать проверки на наличие ключа.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
В Java метод
Collections.reverse()
изменяет порядок элементов в списке на обратный. Это удобно для работы с коллекциями, где требуется обратный порядок.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
В Java метод
String.replace()
заменяет все вхождения указанного символа или подстроки в строке на новое значение. Это удобно для модификации строк без необходимости создания сложных шаблонов.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
В Java метод
String.contains()
проверяет, содержится ли указанная подстрока в строке. Это удобный способ проверки наличия текста в строке.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
В Java методы
String.startsWith()
и String.endsWith()
проверяют, начинается или заканчивается строка на указанную подстроку. Это удобно для работы с текстами и валидации.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
#вопросы_с_собеседований
Расскажите про приведение типов. Что такое понижение и повышение типа?
Приведение типов — это преобразование переменной одного типа в другой.
Существует два вида приведения типов:
— Повышение типа (widening): автоматическое преобразование типа в другой, более широкий тип. Например, int в long. При этом не теряется точность, так как широкий тип может представить все значения узкого типа.
— Понижение типа (narrowing): явное приведение к более узкому типу, например double в int. Здесь возможна потеря точности, поэтому требуется явное приведение в коде.
Повышение типа безопасно, компилятор делает его автоматически.
Понижение опасно потерей данных, поэтому разработчик должен явно указать такое приведение в коде, чтобы показать, что он контролирует возможную потерю точности.
Java Learning👩💻
Расскажите про приведение типов. Что такое понижение и повышение типа?
Существует два вида приведения типов:
— Повышение типа (widening): автоматическое преобразование типа в другой, более широкий тип. Например, int в long. При этом не теряется точность, так как широкий тип может представить все значения узкого типа.
— Понижение типа (narrowing): явное приведение к более узкому типу, например double в int. Здесь возможна потеря точности, поэтому требуется явное приведение в коде.
Повышение типа безопасно, компилятор делает его автоматически.
Понижение опасно потерей данных, поэтому разработчик должен явно указать такое приведение в коде, чтобы показать, что он контролирует возможную потерю точности.
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
RefactorFirst
RefactorFirst — это инструмент для Java-кода, помогающий определить и расставить по приоритетам классы, которые следует рефакторить в первую очередь. Он работает, сканируя код на наличие «божественных классов» (God Classes) и классов с высокой степенью связности.
«Божественных классов» — это классы, которые делают слишком много и, следовательно, являются плохо спроектированными. Они могут быть трудными для понимания, тестирования и сопровождения.
Java Learning👩💻
RefactorFirst — это инструмент для Java-кода, помогающий определить и расставить по приоритетам классы, которые следует рефакторить в первую очередь. Он работает, сканируя код на наличие «божественных классов» (God Classes) и классов с высокой степенью связности.
«Божественных классов» — это классы, которые делают слишком много и, следовательно, являются плохо спроектированными. Они могут быть трудными для понимания, тестирования и сопровождения.
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
В Java метод
Math.round()
округляет число до ближайшего целого значения. Это полезно для обработки чисел с плавающей запятой, если требуется округление до ближайшего целого.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Fastjson
Fastjson — это высокопроизводительная библиотека Java, предназначенная для преобразования объектов Java в JSON и наоборот. Она легкая, быстрая и простая в использовании.
Java Learning👩💻
Fastjson — это высокопроизводительная библиотека Java, предназначенная для преобразования объектов Java в JSON и наоборот. Она легкая, быстрая и простая в использовании.
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
В Java метод
subList()
позволяет создать представление части списка. Это удобно для работы с подмножествами коллекций без необходимости копирования элементов.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM