Java Learning
19.4K subscribers
1.58K photos
1 video
3 files
958 links
№ 5079899194

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

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

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

Реклама на бирже - https://telega.in/c/Java_per_month
Download Telegram
⚙️ MethodHandles.publicLookup()

Метод MethodHandles.publicLookup() в Java предоставляет доступ к публичным методам и полям класса с использованием MethodHandle. Это мощный инструмент для выполнения операций рефлексии с высокой производительностью.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
⚙️ Files.walk()

Метод Files.walk() из пакета java.nio.file используется для рекурсивного обхода файлов и директорий. Это удобный инструмент для работы с иерархическими файловыми структурами.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
FXGL

FXGL (FX Game Library) — это библиотека для разработки игр на Java, основанная на JavaFX 8. Она обеспечивает простой и удобный интерфейс для создания 2D-игр, а также включает в себя множество функций, необходимых для создания полноценных игр.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
🤔 Как это работает? — Паттерн Singleton в Java

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

➡️ Как это работает:

Поле instance хранит единственный экземпляр класса.
Конструктор private, чтобы предотвратить создание новых экземпляров.
Метод getInstance() создаёт экземпляр только при первом вызове (ленивая инициализация).

Развернутый аналог:
// Экземпляр можно также создавать сразу, а не лениво:
private static final Singleton instance = new Singleton();


Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
⚙️ Files.createTempFile()

Метод Files.createTempFile() из пакета java.nio.file используется для создания временного файла, который можно использовать для временного хранения данных. Это удобно для работы с временными данными, которые не нужно сохранять надолго.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
⚙️ MethodHandles.insertArguments()

Метод MethodHandles.insertArguments() в Java позволяет создавать новый MethodHandle, в котором заранее фиксируются значения для некоторых аргументов метода. Это полезно для частичного применения аргументов к методам и упрощения их вызова.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ MethodHandles.arrayElementGetter()

Метод MethodHandles.arrayElementGetter() позволяет создать MethodHandle, который получает элементы из массива. Это полезно для работы с массивами через рефлексию.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
⚙️ Files.copy()

Метод Files.copy() позволяет копировать содержимое файлов или потоков данных.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
⚙️ Files.probeContentType()

Метод Files.probeContentType() определяет тип содержимого файла (MIME type). Это полезно для работы с различными типами данных в файлах.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Вопрос на собеседовании

Что такое Optional.empty(), и как оно помогает избежать null в Java?

Ответ ⬇️
Optional.empty() — это метод в классе Optional, который возвращает пустой объект Optional, указывающий на отсутствие значения. Вместо использования null, Optional помогает явно работать с отсутствующими значениями, минимизируя вероятность NullPointerException. Он предоставляет методы, такие как orElse, orElseThrow, и ifPresent, для управления ситуациями, когда значение отсутствует.

Пример использования ⚙️
import java.util.Optional;

public class Main {
public static void main(String[] args) {
Optional<String> optional = Optional.empty();

// Проверка наличия значения
System.out.println(optional.orElse("Значение отсутствует")); // Значение отсутствует

// Работа с методом ifPresent
optional.ifPresent(value -> System.out.println("Значение: " + value));
}
}


Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
⚙️ Stream.flatMapToInt()

Метод Stream.flatMapToInt() используется для преобразования элементов потока в другой поток примитивов int. Это удобно для обработки вложенных структур данных и работы с примитивами.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🚫 Антипаттерн недели: Использование явных циклов для поиска

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

✔️ Используйте Stream API для лаконичного и производительного поиска элементов.

Java Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7