Java Learning
18.6K subscribers
1.62K photos
1 video
3 files
999 links
№ 5079899194

Обучающий канал по Java

Ссылка для друга - https://t.iss.one/+ZEYYht6-46w5MDM6

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Java_per_month
Download Telegram
InvocationHandler

InvocationHandler — это интерфейс, реализуемый обработчиком вызовов для экземпляра прокси. Каждый экземпляр прокси имеет связанный с ним обработчик вызовов. Когда метод вызывается на экземпляре прокси, вызов метода кодируется и отправляется в метод invoke его обработчика вызовов.

#для_продвинутых
👍8
Интерфейс Delayed

Интерфейс Delayed используется для объектов, у которых есть время истечения задержки.
Он позволяет организовать очередь объектов с учетом их задержки.

Основные методы:
getDelay(TimeUnit unit) — возвращает оставшееся время задержки в указанных единицах измерения.
compareTo(Delayed o) — сравнивает текущий объект с переданным по оставшемуся времени задержки.

Этот интерфейс реализуется классами, которые должны храниться в очереди с задержкой, например в DelayQueue.
👍91
Метод isDaemon()

Метод isDaemon() используется для определения, является ли поток демоном или нет.

Демон (daemon) — это поток, который работает в фоновом режиме и не препятствует завершению программы. Основная программа может завершиться, даже если демон все еще выполняется.
👍16
DatagramPacket

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

#для_продвинутых
👍9
InvocationTargetException

InvocationTargetException – это проверяемое исключение, которое возникает при вызове метода или конструктора через рефлексию, если этот метод или конструктор бросает свое собственное исключение.

#для_продвинутых
👍9🔥1
ResultSet

ResultSet в Java представляет собой объект, который содержит данные, полученные в результате выполнения запроса к базе данных. Он используется для итерации по строкам и столбцам результата запроса и доступа к значениям данных.

#для_начинающих
👍16
InvocationTargetException

InvocationTargetException – это проверяемое исключение, которое возникает при вызове метода или конструктора через рефлексию, если этот метод или конструктор бросает свое собственное исключение.

#для_продвинутых
👍13🔥1
MethodHandle

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

#для_продвинутых
👍13
ManagementFactory

ManagementFactory — это класс-фабрика, предназначенный для получения управляемых beans для платформы Java. Он состоит из статических методов, каждый из которых возвращает один или несколько platform MXBeans, представляющих собой интерфейс управления компонентом виртуальной машины Java (JVM).

#для_продвинутых
👍15
MessageDigest

MessageDigest — это класс в Java, который представляет собой криптографическую хеш-функцию. Он используется для вычисления дайджеста сообщения из двоичных данных. Дайджест сообщения — это фиксированная по длине строка, которая представляет собой «отпечаток» данных. Он может использоваться для проверки целостности данных, а также для аутентификации.

#для_продвинутых
👍12
CopyOnWriteArrayList

CopyOnWriteArrayList — это реализация интерфейса List, оптимизированная для работы в многопоточном окружении.

Основное отличие этой коллекции в том, что все модифицирующие операции (добавление, удаление элементов) не изменяют существующий массив, а создают его копию.
Это позволяет избежать необходимости синхронизации для потокобезопасного чтения.

CopyOnWriteArrayList полезен в ситуациях, когда чтение данных происходит гораздо чаще, чем изменение. Например, при реализации общего кэша в многопоточном приложении.
👍18🤔2
AlgorithmParameters

Класс AlgorithmParameters используется для представления криптографических параметров в виде непрозрачного объекта. Он позволяет управлять параметрами для конкретного алгоритма.

#для_продвинутых
👍11
KeyFactory

KeyFactory — это класс, который используется для преобразования ключей (непрозрачных криптографических ключей типа Key) в спецификации ключей (прозрачные представления базового материала ключа) и наоборот.

Функциональные возможности:
— Преобразование ключей из спецификаций ключей (например, ASN.1 DER) и обратно.
— Генерация ключей на основе алгоритма и параметров.
— Поддержка различных алгоритмов ключей, таких как RSA, DSA, Elliptic Curve Cryptography (ECC).

#для_продвинутых
👍10
ZipInputStream

ZipInputStream — это класс в Java, который используется для чтения файлов ZIP. Он представляет собой фильтр входного потока, который декомпрессирует данные ZIP по мере их чтения.

#для_продвинутых
👍13
GZIPInputStream

GZIPInputStream — это класс в Java, который используется для декомпрессии данных, сжатых с помощью алгоритма gzip. Gzip – это популярный формат сжатия, который используется для уменьшения размера файлов без значительной потери данных.

#для_продвинутых
👍10
Какое из следующих утверждений о потоках неверно?

1. Если метод start() вызывается дважды для одного и того же объекта Thread, во время выполнения генерируется исключение.
2. Порядок, в котором запускались потоки, может не совпадать с порядком их фактического выполнения.
3. Если метод run() вызывается напрямую для объекта Thread, во время выполнения генерируется исключение.
4. Если метод sleep() вызывается для потока, во время выполнения синхронизированного кода, блокировка не снимается.

Правильный ответ: 3. Если метод run() вызывается напрямую для объекта Thread, во время выполнения исключение не генерируется. Однако, код, написанный в методе run() будет выполняться текущим, а не новым потоком. Таким образом, правильный способ запустить поток – это вызов метода start(), который приводит к выполнению метода run() новым потоком.

Вызов метода start() дважды для одного и того же объекта Thread приведёт к генерированию исключения IllegalThreadStateException во время выполнения, следовательно, утверждение 1 верно. Утверждение 2 верно, так как порядок, в котором выполняются потоки, определяется Планировщиком потоков, независимо от того, какой поток запущен первым. Утверждение 4 верно, так как поток не освободит блокировки, которые он держит, когда он переходит в состояние Ожидания.
👍131
IntBuffer

IntBuffer — это класс, который представляет собой буфер для хранения целых чисел (int). Он используется для эффективного хранения и обработки больших массивов целых чисел.

#для_начинающих
👍11
CharBuffer

CharBuffer в Java представляет собой класс, который используется для хранения и манипулирования последовательностями символов. Он является частью пакета java.nio и реализует интерфейс CharSequence.

#для_начинающих
👍10