ar
Feedback
Java | Вопросы собесов

Java | Вопросы собесов

الذهاب إلى القناة على Telegram

📈 نظرة تحليلية على قناة تيليجرام Java | Вопросы собесов

تُعد قناة Java | Вопросы собесов (@easy_java_ru) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 11 385 مشتركاً، محتلاً المرتبة 10 557 في فئة التكنولوجيات والتطبيقات والمرتبة 56 197 في منطقة روسيا.

📊 مؤشرات الجمهور والحراك

منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 11 385 مشتركاً.

بحسب آخر البيانات بتاريخ 31 أغسطس, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار -12، وفي آخر 24 ساعة بمقدار -1، مع بقاء الوصول العام مرتفعاً.

  • حالة التحقق: غير موثّقة
  • معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 8.72‎%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 5.78‎% من ردود الفعل نسبةً إلى إجمالي المشتركين.
  • وصول المنشورات: يحصل كل منشور على متوسط 993 مشاهدة. وخلال اليوم الأول يجمع عادةً 658 مشاهدة.
  • التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 3.
  • الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل ставь, void, string, строка, static.

📝 الوصف وسياسة المحتوى

يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @easyoffer_adv

بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 01 سبتمبر, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.

11 385
المشتركون
-124 ساعات
-77 أيام
-1230 أيام
أرشيف المشاركات
🤔 Массив — статическая структура данных или динамическая? 🟠Почему массив – статическая структура? Фиксированный размер – при создании массива его длина задаётся раз и навсегда. Нельзя изменить размер – нельзя добавить или удалить элементы после создания массива.
int[] numbers = new int[5]; // Размер 5, изменить нельзя!
🟠Что делать, если нужен динамический массив? В Java есть динамические структуры данных, например ArrayList.
import java.util.ArrayList;
import java.util.List;

public class DynamicArrayExample {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        
        list.add(1);
        list.add(2);
        list.add(3);
        
        System.out.println(list); // [1, 2, 3]
    }
}
Ставь 👍 и забирай 📚 Базу знаний

Почему вы не используете Битрикс24 CRM с AI? 1- не знал 2- забыл Рассказываем и напоминаем! ✅Битрикс24 CRM с AI помогает увел
+5
Почему вы не используете Битрикс24 CRM с AI? 1- не знал 2- забыл Рассказываем и напоминаем! ✅Битрикс24 CRM с AI помогает увеличивать продажи, работать с постоянными клиентами и сохранять все важные данные. AI-помощник CoPilot внутри сервиса расшифрует телефонные разговоры и автоматически заполнит карточки клиента в CRM. Битрикс24 можно использовать бесплатно для всех команд, независимо от их размера. ⚡Не тратьте время на рутину. Узнать больше #реклама 16+ bitrix24.ru О рекламодателе

🤔 Какие отличия между ограничениями PRIMARY KEY и UNIQUE? PRIMARY KEY: - уникальный; - не допускает NULL; - может быть только один на таблицу. UNIQUE: - гарантирует уникальность значений; - допускает NULL (в большинстве СУБД — один или несколько). Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Теперь AI сам создает сайты ИИшка в Битрикс24 берёт на себя весь процесс: структура, дизайн, контент — всё создаётся автоматически. Сделайте один запрос AI-помощнику, и через 30 секунд он создаст свой вариант полностью работающего сайта. Узнать больше #реклама sites-24.bitrix24.ru О рекламодателе

🤔 Расскажи про способы оптимизации запросов в БД Оптимизация запросов в базе данных (БД) — это процесс улучшения их производительности, чтобы они выполнялись быстрее и использовали меньше ресурсов. Рассмотрим основные способы оптимизации SQL-запросов. 🟠Индексы Индексы ускоряют поиск данных, создавая структуру, похожую на оглавление книги. Вместо полного перебора таблицы (Full Table Scan), БД быстро находит нужные строки по индексу.
CREATE INDEX idx_user_name ON users(name);
🟠Оптимизация `SELECT` Избегайте SELECT *, так как это нагружает систему избыточными данными. Плохо
SELECT * FROM users;
Хорошо
SELECT id, name FROM users;
🟠Использование `EXPLAIN` Перед оптимизацией полезно посмотреть, как БД выполняет запрос.
EXPLAIN SELECT * FROM users WHERE name = 'Ivan';
🟠Ограничение выборки (`LIMIT`, `OFFSET`) Если вам нужно получить только первые N строк, используйте LIMIT, чтобы БД не грузила лишние данные.
SELECT * FROM users ORDER BY id LIMIT 10;
🟠Оптимизация `JOIN` Соединение (JOIN) таблиц может быть дорогостоящим. Вот несколько рекомендаций: - Используйте индексы на полях, участвующих в JOIN. - Если возможно, замените сложные JOIN на подзапросы (EXISTS, IN).
CREATE INDEX idx_orders_user_id ON orders(user_id);
🟠Кеширование запросов Часто повторяющиеся запросы можно кэшировать на уровне БД (QUERY CACHE в MySQL) или в приложении (Redis, Memcached).
SET GLOBAL query_cache_size = 1000000;
🟠Нормализация и денормализация Нормализация уменьшает дублирование данных, разбивая таблицы. Денормализация может ускорить работу, дублируя данные и уменьшая количество JOIN. Ставь 👍 и забирай 📚 Базу знаний

Ищу желающих перейти в сферу IT без долгого обучения ⚡ Обучим бесплатно — от вас потребуется всего несколько часов в день. Мы
Ищу желающих перейти в сферу IT без долгого обучения ⚡ Обучим бесплатно — от вас потребуется всего несколько часов в день. Мы помогаем IT-компаниям находить квалифицированных тестировщиков. Профессия тестировщика — отличный способ сменить сферу и начать зарабатывать стабильно. 👌 Подходит тем, кто не боится работать и хочет достойный доход. Сначала проведу вводное бесплатное занятие, где расскажу: — что такое тестирование и зачем оно нужно; — где искать клиентов; — как пройти практику и попасть в крутую IT-команду. ✅ Что нужно будет делать: — проверять приложения и программы; — находить баги; — получать за это деньги. 💰 Доход — от 70 000 ₽ в месяц и выше Подходит даже без технической подготовки. 👍 Для регистрации на бесплатный урок переходите на сайт. Перейти на сайт #реклама 16+ site.purrweb-academy.ru О рекламодателе

🤔 Чем JPA отличается от Hibernate? - JPA — это спецификация (стандарт), описывающая работу ORM в Java. - Hibernate — это реализация JPA, а также включает расширения, выходящие за пределы стандарта. JPA задаёт контракт, Hibernate — конкретный инструмент. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Чем отличается компонент от бина? В Spring оба термина – Bean и Component – связаны с управляемыми объектами, но у них разное предназначение. 🚩Что такое `@Component`? @Component делает класс Spring-бином автоматически. Spring сам создаст и зарегистрирует объект в контейнере.
import org.springframework.stereotype.Component;

@Component
public class Car {
    public void drive() {
        System.out.println("Машина едет...");
    }
}
Как получить объект?
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class Main {
    public static void main(String[] args) {
        ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
        Car car = context.getBean(Car.class);
        car.drive();
    }
}
🚩Что такое `@Bean`? @Bean создаёт Bean вручную в @Configuration-классе. Можно использовать, если нужно передать параметры или создать Bean из библиотеки.
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class AppConfig {
    @Bean
    public Car car() {
        return new Car(); // Создаём объект вручную
    }
}
Как получить Bean?
ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
Car car = context.getBean(Car.class);
Ставь 👍 и забирай 📚 Базу знаний

Битрикс24 дропнул новую фичу — онлайн-доски Теперь к вашему рабочему мессенджеру, видеозвонкам и таскам добавился еще один маст-хэв инструмент. Все это бесплатно и в одном комплекте. Офисные стикеры, берегитесь.😊 Узнать больше #реклама 16+ bitrix24.ru О рекламодателе

🤔 Как работает Servlet в многопоточном режиме? Один экземпляр сервлета обрабатывает множество запросов одновременно в отдельных потоках. Поэтому важно избегать использования общих изменяемых данных без синхронизации. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Как бы выразил полиморфизм в коде? Это способность объектов разных классов реагировать на одинаковые методы по-разному. В Java полиморфизм достигается через наследование, переопределение методов и использование абстрактных классов или интерфейсов. 🚩Пример полиморфизма в коде Наследование и переопределение методов
class Animal {
    public void sound() {
        System.out.println("Animal makes a sound");
    }
}

class Dog extends Animal {
    @Override
    public void sound() {
        System.out.println("Dog barks");
    }
}

class Cat extends Animal {
    @Override
    public void sound() {
        System.out.println("Cat meows");
    }
}

public class Main {
    public static void main(String[] args) {
        Animal myDog = new Dog();  // Полиморфизм
        Animal myCat = new Cat();  // Полиморфизм

        myDog.sound();  // Вывод: Dog barks
        myCat.sound();  // Вывод: Cat meows
    }
}
Использование интерфейсов
interface Shape {
    void draw();
}

class Circle implements Shape {
    @Override
    public void draw() {
        System.out.println("Drawing a Circle");
    }
}

class Rectangle implements Shape {
    @Override
    public void draw() {
        System.out.println("Drawing a Rectangle");
    }
}

public class Main {
    public static void main(String[] args) {
        Shape shape1 = new Circle();    // Полиморфизм
        Shape shape2 = new Rectangle(); // Полиморфизм

        shape1.draw();  // Вывод: Drawing a Circle
        shape2.draw();  // Вывод: Drawing a Rectangle
    }
}
Реальный пример использования полиморфизма
class Animal {
    public void sound() {
        System.out.println("Some generic animal sound");
    }
}

class Dog extends Animal {
    @Override
    public void sound() {
        System.out.println("Woof Woof");
    }
}

class Cat extends Animal {
    @Override
    public void sound() {
        System.out.println("Meow");
    }
}

public class Main {
    public static void main(String[] args) {
        Animal[] animals = {new Dog(), new Cat(), new Animal()};

        for (Animal animal : animals) {
            animal.sound();  // Полиморфный вызов
        }
    }
}
Результат
Woof Woof
Meow
Some generic animal sound
Ставь 👍 и забирай 📚 Базу знаний

Ноутбуки MSI для игр и учебы с выгодой до 14 000 рублей! Мощные ноутбуки MSI - Современные решения для любых задач. Сейчас с
Ноутбуки MSI для игр и учебы с выгодой до 14 000 рублей! Мощные ноутбуки MSI - Современные решения для любых задач. Сейчас с выгодой в Ситилинк! Узнать больше #реклама msi.gm О рекламодателе

🤔 Можно ли в Map преобразовать коллекцию? Да, с помощью Stream API можно преобразовать коллекцию в Map, указав: - как формируются ключи; - как формируются значения; - что делать при коллизиях ключей. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

1️⃣2️⃣3️⃣4️⃣5️⃣6️⃣7️⃣8️⃣9️⃣🔟 Как меняется ИТ-индустрия с внедрением AI? Узнай 6 июня на ИТ-конференции МТС True Tech Day Tru
1️⃣2️⃣3️⃣4️⃣5️⃣6️⃣7️⃣8️⃣9️⃣🔟 Как меняется ИТ-индустрия с внедрением AI? Узнай 6 июня на ИТ-конференции МТС True Tech Day True Tech Day 2025 — третья масштабная технологическая конференция МТС для профессионалов ИТ‑индустрии. В программе: — Больше 40 докладов от известных ученых и ИТ-компаний. — Выступления зарубежных спикеров с индексом Хирша более 50. — Концентрация практических кейсов: как создаются большие проекты с применением AI. — Доклады по архитектуре, бэкенд-разработке и построению ИТ-платформ. — AI-интерактивы и технологические квесты. — Пространство для нетворкинга, …а еще after-party со звездным лайн-апом. Когда: 6 июня Где: Москва, МТС Live Холл и онлайн Участие бесплатно.Регистрация по ссылке.

🤔 Есть ли возможность создать два Singleton'а в Spring'е В Spring действительно можно создать два синглтона, но тут важно понимать, что Spring использует паттерн Singleton на уровне контейнера, а не на уровне JVM. Давайте разберёмся, как это возможно. 🟠Определение Singleton в Spring В Spring синглтон означает, что в рамках одного контекста (ApplicationContext) создаётся один экземпляр бина.
@Component
public class MySingletonBean {
    public MySingletonBean() {
        System.out.println("Создан экземпляр MySingletonBean");
    }
}
🟠Два Singleton'а в Spring? Как это возможно? Есть несколько способов создать два синглтона. Создание двух контекстов (ApplicationContext) Spring гарантирует синглтонность только в одном контексте. Если создать два контекста, можно получить два независимых синглтона.
AnnotationConfigApplicationContext context1 = new AnnotationConfigApplicationContext(AppConfig.class);
AnnotationConfigApplicationContext context2 = new AnnotationConfigApplicationContext(AppConfig.class);

MySingletonBean bean1 = context1.getBean(MySingletonBean.class);
MySingletonBean bean2 = context2.getBean(MySingletonBean.class);

System.out.println(bean1 == bean2); // false! Два разных объекта
Определение двух бинов одного типа Можно создать два разных бина, просто давая им разные имена в конфигурации.
@Configuration
public class AppConfig {

    @Bean
    public MySingletonBean firstSingleton() {
        return new MySingletonBean();
    }

    @Bean
    public MySingletonBean secondSingleton() {
        return new MySingletonBean();
    }
}
Теперь оба метода создадут разные объекты.
ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);

MySingletonBean bean1 = context.getBean("firstSingleton", MySingletonBean.class);
MySingletonBean bean2 = context.getBean("secondSingleton", MySingletonBean.class);

System.out.println(bean1 == bean2); // false
Изменение области (scope) бина Если изменить область (@Scope), можно получить два экземпляра в одном контексте, но тогда это уже не будет синглтон.
@Component
@Scope("prototype")
public class MyBean {
    public MyBean() {
        System.out.println("Создан новый экземпляр MyBean");
    }
}
Ставь 👍 и забирай 📚 Базу знаний

Есть фича. Есть дедлайн. Есть понимание, что тесты надо писать… но они отъедают время, которого итак впритык. Один наш знаком
Есть фича. Есть дедлайн. Есть понимание, что тесты надо писать… но они отъедают время, которого итак впритык. Один наш знакомый девелопер сказал: «С тех пор как поставил Explyt Test — начал писать меньше тестов… но покрытие стало лучше. Как это вообще возможно?!» Попробуйте сами. Плагин сам предлагает тесты для вашего кода — прямо в IDE. 👉 explyt.ai — сэкономь себе пару часов уже сегодня.

Сколько приложений нужно вашей команде для работы? Всего один сервис — Битрикс24! А внутри десятки инструментов для совместно
+7
Сколько приложений нужно вашей команде для работы? Всего один сервис — Битрикс24! А внутри десятки инструментов для совместной работы и бизнеса. Читайте подробнее в карточках. Регистрируйтесь сейчас, чтобы забрать их все себе бесплатно😊 Зарегистрироваться #реклама 16+ office-online.bitrix24.ru О рекламодателе

🤔 Что известно про управление уровнями изоляции транзакций в Hibernate? Hibernate поддерживает стандартные уровни изоляции транзакций, определяемые JDBC: - READ_UNCOMMITTED - READ_COMMITTED - REPEATABLE_READ - SERIALIZABLE Эти уровни можно установить через Transaction API или настройки JDBC. Они управляют тем, какие изменения доступны другим транзакциям, и предотвращают эффекты вроде грязного чтения, неповторяемого чтения и фантомных записей. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 В чём заключается разница между методами start() и run()? 🚩`start()` – создаёт новый поток Метод start() создаёт новый поток и вызывает run() внутри него.
class MyThread extends Thread {
    @Override
    public void run() {
        System.out.println("Работает поток: " + Thread.currentThread().getName());
    }
}

public class Main {
    public static void main(String[] args) {
        MyThread thread = new MyThread();
        thread.start(); // Запускаем новый поток

        System.out.println("Работает поток: " + Thread.currentThread().getName());
    }
}
Вывод (разные потоки работают параллельно)
Работает поток: main
Работает поток: Thread-0
🚩`run()` – выполняется в ТЕКУЩЕМ потоке (без создания нового) Если вызвать run() напрямую, код просто выполнится как обычный метод, а не в новом потоке.
public class Main {
    public static void main(String[] args) {
        MyThread thread = new MyThread();
        thread.run(); // ❌ Ошибка! Работает в главном потоке

        System.out.println("Работает поток: " + Thread.currentThread().getName());
    }
}
Вывод (run() работает в главном потоке, а не в новом)
Работает поток: main
Работает поток: main
Ставь 👍 и забирай 📚 Базу знаний

Запустите рекламу в телеграм-каналах с Яндекс Директом Перфоманс-реклама теперь в телеграм-каналах ⚡ Яндекс Директ знает, как
Запустите рекламу в телеграм-каналах с Яндекс Директом Перфоманс-реклама теперь в телеграм-каналах ⚡ Яндекс Директ знает, как привлечь целевую аудиторию 💰👌 Попробовать #реклама yandex.ru О рекламодателе