#собес
🤔 Расскажите о подражании Java. Каковы особенности использования ключевого слова super?
Ключевое слово
👉 Новости 👉 Платформа
Ключевое слово
super
в Java используется для вызова конструктора или методов родительского класса, а также для доступа к скрытым полям. Это необходимо при переопределении методов или для точного указания, что используется родительская версия метода или свойства.Please open Telegram to view this post
VIEW IN TELEGRAM
#новости
😐 Новые возможности в Java 21
🟠 Шаблоны записей (Record patterns) были добавлены в Java 19 и Java 20 как preview-функции. В Java 21 они вышли из режима предварительного просмотра с некоторыми улучшениями.
🟠 Сопоставление с образцом в switch (Pattern matching for switch) было усовершенствовано в JDK 18, 19 и 20, а в JDK 21 получило дополнительные улучшения.
🟠 Шаблоны строк (String templates) появились в Java 21.
🟠 Виртуальные потоки (Virtual threads) впервые были добавлены в Java 19 в качестве preview-функции и доработаны в Java 20. В Java 21 добавлены новые изменения.
🟠 Новые интерфейсы для упорядоченных коллекций: в Java 21 появились три новых интерфейса для представления упорядоченных коллекций, упорядоченных наборов (sets) и упорядоченных карт (maps).
🟠 Новый API KEM: Java 21 добавила новый API KEM, который позволяет приложениям использовать алгоритмы KEM.
👉 Новости 👉 База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😇 Основы flatMap в Java
🟠 flatMap является промежуточной операцией.
🟠 Промежуточные операции преобразуют один поток (stream) в другой и позволяют выполнять дальнейшие операции с потоком.
🟠 Слово «flat» в flatMap указывает на его способность «выравнивать» поток коллекций (например, Stream<List<T>>) в единый поток элементов (Stream<T>).
🟠 Назначение: преобразует каждый элемент исходного потока в поток других элементов (отображение «один ко многим»), а затем объединяет (выравнивает) полученные потоки в единый непрерывный поток.
👉 Новости 👉 База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
🤯 Как установить базовый URL для REST API в приложении Spring Boot.
Базовый URL — это постоянная часть адреса вашего REST API или веб-сайта, например,
Читать подробнее
👉 Новости 👉 База вопросов
Базовый URL — это постоянная часть адреса вашего REST API или веб-сайта, например,
"http://twitter.com"
для Twitter. Читать подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
#собес
🤔 Что такое сигнатура метода? Приведите примеры правильных и неправильных сигнатур.
Сигнатура метода в Java - это его имя и список типов параметров (их порядок важен). Она используется для различения методов в одном классе. Возвращаемый тип и модификаторы доступа не являются частью сигнатуры.
👉 Новости 👉 Платформа
Сигнатура метода в Java - это его имя и список типов параметров (их порядок важен). Она используется для различения методов в одном классе. Возвращаемый тип и модификаторы доступа не являются частью сигнатуры.
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
#видео
😊 Дженерики в Java. Проще чем кажется.
Видео объясняет концепцию дженериков в Java, начиная с их создания, а не использования, чтобы упростить понимание для начинающих. Автор показывает, как параметризованные типы позволяют работать с разными объектами, демонстрирует примеры с числами, строками и пользовательским классом Car, объясняя, почему важно переопределять метод toString для корректного вывода.
📱 Cмотреть на ютубе
👉 Новости 👉 База вопросов
Видео объясняет концепцию дженериков в Java, начиная с их создания, а не использования, чтобы упростить понимание для начинающих. Автор показывает, как параметризованные типы позволяют работать с разными объектами, демонстрирует примеры с числами, строками и пользовательским классом Car, объясняя, почему важно переопределять метод toString для корректного вывода.
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
#видео
🤓 Пойми как устроены примитивы в Java
Видео — детальный разбор примитивных типов данных в Java: их размер, диапазон, литералы, а также отличие от классов-оберток (Wrapper Classes, BigInteger, BigDecimal). Рассматривается двоичное представление чисел, переполнение, работа с отрицательными и дробными числами.
📱 Cмотреть видео
👉 Новости 👉 База вопросов
Видео — детальный разбор примитивных типов данных в Java: их размер, диапазон, литералы, а также отличие от классов-оберток (Wrapper Classes, BigInteger, BigDecimal). Рассматривается двоичное представление чисел, переполнение, работа с отрицательными и дробными числами.
Please open Telegram to view this post
VIEW IN TELEGRAM
#собес
🤔 Что такое инициализатор?
Инициализатор - это блок кода, который используется для инициализации переменных или выполнения логики до конструктора. Бывают статические и нестатические (экземплярные) инициализаторы.
👉 Новости 👉 Платформа
Инициализатор - это блок кода, который используется для инициализации переменных или выполнения логики до конструктора. Бывают статические и нестатические (экземплярные) инициализаторы.
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЛитКод
Задача: 560. Subarray Sum Equals K
Дан массив целых чисел nums и целое число k, вернуть общее количество подмассивов, сумма которых равна k.
Подмассив - это непрерывная непустая последовательность элементов внутри массива.
Пример:
👨💻 Алгоритм:
1⃣ Самый простой метод - рассмотреть каждый возможный подмассив данного массива nums.
2⃣ Найти сумму элементов каждого из этих подмассивов и проверить равенство полученной суммы с заданным k.
3⃣ Всякий раз, когда сумма равна k, увеличить счетчик, используемый для хранения необходимого результата.
😎 Решение:
👉 Новости 👉 База вопросов
Задача: 560. Subarray Sum Equals K
Дан массив целых чисел nums и целое число k, вернуть общее количество подмассивов, сумма которых равна k.
Подмассив - это непрерывная непустая последовательность элементов внутри массива.
Пример:
Input: nums = [1,1,1], k = 2
Output: 2
public class Solution {
public int subarraySum(int[] nums, int k) {
int count = 0;
for (int start = 0; start < nums.length; start++) {
for (int end = start + 1; end <= nums.length; end++) {
int sum = 0;
for (int i = start; i < end; i++) {
sum += nums[i];
}
if (sum == k) {
count++;
}
}
}
return count;
}
}
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🥺 Основные концепции в Kafka которые нужно знать:
🟠 Топики (Topics): Kafka организует сообщения в топики, которые выступают в роли категорий сообщений.
🟠 Разделы (Partitions): Каждый топик разделяется на несколько разделов, что позволяет обрабатывать данные параллельно.
🟠 Продюсеры (Producers): Отправляют сообщения в топики Kafka.
🟠 Потребители (Consumers): Читают сообщения из топиков, обычно в составе групп потребителей для параллельной обработки.
🟠 Брокеры (Brokers): Сервера Kafka, которые хранят и передают сообщения.
🟠 Zookeeper: Управляет метаданными и выбором лидера для разделов.
👉 Новости 👉 База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#видео
😇 Создание простого HTTP-сервера в Java
🟠 Настройка и обзор проекта.
🟠 Управление конфигурацией.
🟠 Использование серверных сокетов.
🟠 Обработка нескольких подключений с помощью потоков.
🟠 Разбор HTTP-запросов.
и тд.
Это пошаговое руководство, которое поможет разобраться в основах создания веб-сервера с нуля на Java.
📱 Cмотреть источник
👉 Новости 👉 База вопросов
и тд.
Это пошаговое руководство, которое поможет разобраться в основах создания веб-сервера с нуля на Java.
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
#полезное
🤯 Забыли про ExecutorService и вечные потоки?
Дайте шанс
Пример
Преимущества
🟠 Параллельные операции без блокировок.
🟠 Чистый и понятный код.
🟠 Гибкость при работе с результатами.
👉 Новости 👉 База вопросов
Дайте шанс
CompletableFuture
! Это идеальный способ выполнять несколько операций параллельно, при этом сохраняя чистый код.Пример
CompletableFuture.supplyAsync(() -> {
// Долгая операция
return "Hello, ";
}).thenCombine(
CompletableFuture.supplyAsync(() -> {
// Ещё одна операция
return "World!";
}),
(greeting, name) -> greeting + name
).thenAccept(System.out::println); // Выведет "Hello, World!"
Преимущества
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
👍 Как работает перехватчик (Interceptor) в Spring Boot?
Когда клиент делает запрос:
1⃣
2⃣ Затем
3⃣ Перед тем как запрос достигнет Controller, он проходит через все настроенные перехватчики (Interceptors) и выполняет их метод preHandle().
4⃣ Если все методы
5⃣ Controller выполняет запрос. После этого запрос проходит через метод postHandle() всех перехватчиков.
6⃣ Наконец, если все прошло успешно и методы
👉 Новости 👉 База вопросов
Когда клиент делает запрос:
DispatcherServlet
первым получает запрос.DispatcherServlet
использует HandlerMappings, чтобы найти соответствующий Controller.
preHandle()
возвращают true, запрос передается в Controller.
postHandle()
вернули true
, вызывается метод afterCompletion()
у всех перехватчиков.Please open Telegram to view this post
VIEW IN TELEGRAM
#собес
🤔 Что означает ключевое слово?
Ключевые слова - это зарезервированные слова в языке программирования, которые имеют специальное значение и не могут быть использованы для именования переменных, методов и классов. В Java ключевые слова такие как class, static, if и другие определяют структуру и функциональность программы.
👉 Новости 👉 База вопросов
Ключевые слова - это зарезервированные слова в языке программирования, которые имеют специальное значение и не могут быть использованы для именования переменных, методов и классов. В Java ключевые слова такие как class, static, if и другие определяют структуру и функциональность программы.
Please open Telegram to view this post
VIEW IN TELEGRAM
YeaHub
YeaHub — тренажер собеседований по IT
5000+ вопросов для подготовки к интервью. Фильтры, квизы, статистика!
#полезное
😊 Как Java-приложение подключается к базе данных через JDBC?
При разработке Java-приложений часто требуется работать с базой данных. Для этого используется JDBC (Java Database Connectivity) — технология, которая позволяет Java-программе отправлять SQL-запросы и получать данные
Давайте разберемся, как это работает шаг за шагом:
1⃣ Java-приложение
Программа пишет SQL-запрос, который нужно выполнить (например, SELECT * FROM users).
2⃣ JDBC API
Этот запрос передается через JDBC API, который является стандартным интерфейсом взаимодействия с базами данных в Java.
3⃣ Driver Manager (Менеджер драйверов)
JDBC API отправляет запрос в Driver Manager. Этот компонент выбирает правильный драйвер для нужной базы данных.
4⃣ Database Driver (Драйвер базы данных)
Найденный драйвер переводит запрос в понятный для базы данных формат и отправляет его в СУБД.
5⃣ Database (База данных)
База данных выполняет запрос и возвращает результат обратно через все уровни:
Database → Database Driver → Driver Manager → JDBC API → Java-приложение.
👉 Новости 👉 База вопросов
При разработке Java-приложений часто требуется работать с базой данных. Для этого используется JDBC (Java Database Connectivity) — технология, которая позволяет Java-программе отправлять SQL-запросы и получать данные
Давайте разберемся, как это работает шаг за шагом:
Программа пишет SQL-запрос, который нужно выполнить (например, SELECT * FROM users).
Этот запрос передается через JDBC API, который является стандартным интерфейсом взаимодействия с базами данных в Java.
JDBC API отправляет запрос в Driver Manager. Этот компонент выбирает правильный драйвер для нужной базы данных.
Найденный драйвер переводит запрос в понятный для базы данных формат и отправляет его в СУБД.
База данных выполняет запрос и возвращает результат обратно через все уровни:
Database → Database Driver → Driver Manager → JDBC API → Java-приложение.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤓 Что такое Spring Boot и чем он отличается от традиционного Spring Framework?
Spring Boot — это упрощённый и удобный фреймворк, построенный на основе Spring Framework. Он значительно облегчает разработку самодостаточных и готовых к продакшену Spring-приложений благодаря следующим особенностям:
🟠 Автоконфигурация – автоматически настраивает Spring и сторонние библиотеки в зависимости от присутствующих зависимостей в classpath.
🟠 Starter POMs – предоставляет готовые зависимости (starter'ы), упрощая конфигурацию сборки.
🟠 Встроенные серверы – включает встроенные сервера, такие как Tomcat и Jetty, устраняя необходимость в сторонних серверных контейнерах.
🟠 Без XML-конфигурации – активно использует аннотации, уменьшая количество шаблонного (boilerplate) кода.
Основное отличие от традиционного Spring Framework в том, что Spring Boot автоматизирует настройку, тогда как обычный Spring требует много ручной конфигурации.
👉 Новости 👉 База вопросов
Spring Boot — это упрощённый и удобный фреймворк, построенный на основе Spring Framework. Он значительно облегчает разработку самодостаточных и готовых к продакшену Spring-приложений благодаря следующим особенностям:
Основное отличие от традиционного Spring Framework в том, что Spring Boot автоматизирует настройку, тогда как обычный Spring требует много ручной конфигурации.
Please open Telegram to view this post
VIEW IN TELEGRAM