Java Developer – Telegram
Java Developer
15.8K subscribers
1.86K photos
135 videos
2 files
2.07K links
Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

Сотрудничество: @bape_ads
Прайс: @bape_media

РКН: https://clck.ru/3GHfTK

Реклама на бирже: https://telega.in/c/java_tg
Download Telegram
👩‍💻 Apache POI

Apache POI (Poor Obfuscation Implementation) — это библиотека Java, которая позволяет читать и записывать файлы Microsoft Office (Excel, Word и PowerPoint).

С помощью Apache POI вы можете создавать, изменять и читать файлы Office без необходимости установки соответствующих программ Microsoft Office.

Код из примера создает новую книгу Excel и записывает данные в лист "MySheet".

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
27
Вопрос с собеседования

Что такое Optional?

Ответ: Опциональное значение Optional — это контейнер для объекта, который может содержать или не содержать значение null. Такая обёртка является удобным средством предотвращения NullPointerException, т.к. имеет некоторые функции высшего порядка, избавляющие от добавления повторяющихся if null/notNull проверок.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
232
📘 Если ещё не подписаны на наш канал для изучения английского в IT сфере — самое время это сделать👇🏻

https://news.1rj.ru/str/+RwaQxz8YiH1iOTVi

Новые слова, викторины и английские мемчики на каждый день:
CodeLang | Английский в IT
Please open Telegram to view this post
VIEW IN TELEGRAM
3🤣1
👩‍💻 Интерфейс Cloneable

Cloneable — это интерфейс, который служит для указания того, что объект может быть клонирован с помощью метода clone().

Важно отметить, что при использовании метода clone() для создания копии объекта через интерфейс Cloneable, происходит поверхностное клонирование, что означает, что только примитивные типы и ссылки на объекты копируются, но сами объекты не клонируются.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
121
Вопрос с собеседования

К каким переменным есть доступ у лямбда-выражений?

Ответ: Доступ к переменным внешней области действия из лямбда-выражения очень схож к доступу из анонимных объектов. Можно ссылаться на:

— Неизменяемые (effectively final — не обязательно помеченные как final) локальные переменные;
— Поля класса;
— Статические переменные.

К методам по умолчанию реализуемого функционального интерфейса обращаться внутри лямбда-выражения запрещено.


➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
11😁1
👩‍💻 Деплой приложения на Java. Хостим проект через push в Git

В статье мы рассмотрим, как развернуть в облаке приложение на Java, на примере Spring Boot приложения с встраиваемой базой данных H2.

Мы попробуем развернуть приложение с простым REST API, сборкой Maven и тремя эндпоинтами, позволяющими добавить продукт, получить список всех продуктов и узнать общую стоимость всех продуктов.

Ссылка на статью — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
9
3
Что выведет код сверху?
Anonymous Quiz
5%
0
13%
1
44%
null
37%
NullPointerException
81
👩‍💻 Сортировка списка строк с помощью лямбда-выражения

Метод Collections.sort принимает список list и компаратор в качестве аргументов.

Компаратор представлен в виде лямбда-выражения (a, b) -> a.compareTo(b), которое сравнивает две строки a и b с помощью метода compareTo.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
152
Вопрос с собеседования

Как работает метод Thread.join()?

Ответ: Когда поток вызывает join() для другого потока, текущий работающий поток будет ждать, пока другой поток, к которому он присоединяется, не будет завершён.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
19
👩‍💻 Контроллеры на дженериках: пишем в 3 раза меньше кода

В данной статье автор предлагает использовать мапперы и репозитории для упрощения работы с данными в Spring.

Мапперы используются для преобразования между объектами и базой данных. Репозитории предоставляют доступ к данным и могут быть параметризованы для общих запросов контроллеров.

Ссылка на статью — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
11
Вопрос с собеседования

Для чего нужен метод collect() в стримах?

Ответ: Метод collect() является конечной операцией, которая используется для представления результата в виде коллекции или какой-либо другой структуры данных. Так же существует возможность создания собственного коллектора через Collector.of().

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
10😁3
👩‍💻 JavaFX

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

Пример простого приложения JavaFX, отображающего окно с надписью "Hello, World!":
public class HelloWorldApp extends Application {

@Override
public void start(Stage primaryStage) {
primaryStage.setTitle("Hello World!");

Label label = new Label("Hello, World!");
StackPane root = new StackPane();
root.getChildren().add(label);

primaryStage.setScene(new Scene(root, 300, 200));
primaryStage.show();
}

public static void main(String[] args) {
launch(args);
}
}


Документация — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
21🤣5😁3
Что выведет код сверху?
Anonymous Quiz
16%
2 + исключение
40%
2 1
22%
2 2
22%
Ошибка компиляции
3
👩‍💻 Зонтичный мониторинг на коленке

В данной статье автор рассказывает, как написать свое приложение для решения проблемы зонтичного мониторинга на spring-boot.

Под зонтичным мониторингом подразумевается информационная система, которая работает с событиями от систем мониторинга и рассчитывает статусы сервисно-ресурсной модели.

Ссылка на статью — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
102
Вопрос с собеседования

Что такое livelock?

Ответ: livelock — тип взаимной блокировки, при котором несколько потоков выполняют бесполезную работу, попадая в зацикленность при попытке получения каких-либо ресурсов.

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


➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
23💯5
⌨️ Методы класса File

boolean createNewFile() — создаёт новый файл;

boolean delete() — удаляет каталог или файл;

boolean mkdir() — создаёт новый каталог;

boolean renameTo(File dest) — переименовывает файл или каталог;

boolean exists() — проверяет, существует ли файл или каталог;

String getAbsolutePath() — возвращает абсолютный путь для пути, переданного в конструктор объекта;

String getName() — возвращает краткое имя файла или каталога;

String getParent() — возвращает имя родительского каталога;

boolean isDirectory() — возвращает значение true, если по указанному пути находится каталог;

boolean isFile() — возвращает значение true, если по указанному пути находится файл;

boolean isHidden() — возвращает значение true, если каталог или файл являются скрытыми;

long length()возвращает размер файла в байтах;

long lastModified() — возвращает время последнего изменения файла или каталога;

String[] list() — возвращает массив файлов и подкаталогов, которые находятся в определенном каталоге;

File[] listFiles() — возвращает массив файлов и подкаталогов, которые находятся в определенном каталоге.

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
39💯1
Что выведет код сверху?
Anonymous Quiz
3%
1010
57%
1010.2
7%
20.2
34%
Ошибка
3
👩‍💻 Java: разработка игр с использованием ChatGPT

В данной статье автор использует ChatGPT для создания игр и решения задач.

Первое, что приходит в голову, когда речь заходит о ChatGPT и играх — это работа с текстом: диалоги, квесты, сюжет. Но это банально, скучно и не интересно. Рассмотрим вариант, чтобы ИИ мог управлять буквально каждым аспектом геймплея.

Ссылка на статью — КЛИК

➡️ Java Developer
Please open Telegram to view this post
VIEW IN TELEGRAM
9