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

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

رفتن به کانال در Telegram

📈 تحلیل کانال تلگرام Java | Вопросы собесов

کانال Java | Вопросы собесов (@easy_java_ru) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 11 453 مشترک است و جایگاه 10 900 را در دسته فناوری و برنامه‌ها و رتبه 57 494 را در منطقه روسيا دارد.

📊 شاخص‌های مخاطب و پویایی

از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 11 453 مشترک جذب کرده است.

بر اساس آخرین داده‌ها در تاریخ 09 ژوئن, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر 13 و در ۲۴ ساعت گذشته برابر -1 بوده و همچنان دسترسی گسترده‌ای حفظ شده است.

  • وضعیت تأیید: تأیید نشده
  • نرخ تعامل (ER): میانگین تعامل مخاطب 10.15% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 7.30% واکنش نسبت به کل مشترکان کسب می‌کند.
  • دسترسی پست‌ها: هر پست به طور میانگین 1 162 بازدید دریافت می‌کند. در اولین روز معمولاً 836 بازدید جمع‌آوری می‌شود.
  • واکنش‌ها و تعامل: مخاطبان به‌طور فعال حمایت می‌کنند؛ میانگین واکنش به هر پست 6 است.
  • علایق موضوعی: محتوا بر موضوعات کلیدی مانند ставь, void, string, строка, static تمرکز دارد.

📝 توضیح و سیاست محتوایی

نویسنده این فضا را محل بیان دیدگاه‌های شخصی توصیف می‌کند:
Cайт easyoffer.ru Реклама @easyoffer_adv ВП @easyoffer_vp Тесты t.me/+icUwivvbGOkwNWRi Задачи t.me/+8eqUTboisnkyZjQy Вакансии t.me/+4pspF5nDjgM4MjQy

به لطف به‌روزرسانی‌های پرتکرار (آخرین داده در تاریخ 10 ژوئن, 2026)، کانال همواره به‌روز و دارای دسترسی بالاست. تحلیل‌ها نشان می‌دهد مخاطبان به‌طور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامه‌ها تبدیل کرده‌اند.

11 453
مشترکین
-124 ساعت
+47 روز
+1330 روز
آرشیو پست ها
🤔 Расскажи про транзитивность Транзитивность — это математическое и логическое свойство отношений, означающее, что если A связано с B, а B связано с C, то A связано с C. 🚩Транзитивность в отношении эквивалентности (`equals`) Согласно контракту метода equals(), он должен быть транзитивным
class Person {
    String name;

    Person(String name) {
        this.name = name;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj) return true;
        if (obj == null || getClass() != obj.getClass()) return false;
        Person person = (Person) obj;
        return name.equals(person.name);
    }
}

public class Main {
    public static void main(String[] args) {
        Person p1 = new Person("Иван");
        Person p2 = new Person("Иван");
        Person p3 = new Person("Иван");

        System.out.println(p1.equals(p2)); // true
        System.out.println(p2.equals(p3)); // true
        System.out.println(p1.equals(p3)); // true (транзитивность)
    }
}
🚩Транзитивность в сравнении (`compareTo` из `Comparable`) Метод compareTo() должен соблюдать транзитивность:
class Student implements Comparable<Student> {
    int age;

    Student(int age) {
        this.age = age;
    }

    @Override
    public int compareTo(Student other) {
        return Integer.compare(this.age, other.age);
    }
}

public class Main {
    public static void main(String[] args) {
        Student s1 = new Student(25);
        Student s2 = new Student(20);
        Student s3 = new Student(15);

        System.out.println(s1.compareTo(s2)); // > 0 (s1 > s2)
        System.out.println(s2.compareTo(s3)); // > 0 (s2 > s3)
        System.out.println(s1.compareTo(s3)); // > 0 (s1 > s3) (транзитивность)
    }
}
🚩Транзитивность в наследовании (`extends` / `implements`) В Java классы могут наследоваться транзитивно
class Animal {}
class Mammal extends Animal {}
class Dog extends Mammal {}
Ставь 👍 и забирай 📚 Базу знаний

Системный администратор Linux с нуля Бесплатный курс от Selectel Старт — 1 марта Освойте администрирование Linux на SelectOS.
Системный администратор Linux с нуля Бесплатный курс от Selectel Старт — 1 марта Освойте администрирование Linux на SelectOS. После курса вы сможете: - управлять инфраструктурой на базе Linux; - работать с командной строкой и основными утилитами; - управлять пользователями, файлами и правами доступа; - настраивать сети, SSH-соединения и мониторинг системы; - управлять пакетами и обновлениями программного обеспечения; - анализировать логи и устранять инциденты. Смотреть #реклама 16+ promo.selectel.ru О рекламодателе

🤔 Чем обеспечена иммутабельность строк? 1. Использование final char[] (до Java 9) – строка после создания не может быть изменена. 2. String Pool – при повторном использовании одинаковых строк объект не создается заново. 3. Безопасность многопоточного доступа – строки могут использоваться в потоках без блокировок. 4. Кэширование хеш-кода – ускоряет работу с HashMap, Set. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 В чем разница между new string и string? В Java строки (String) являются неизменяемыми (immutable) объектами и обрабатываются особым образом, особенно при их создании. 🚩`"Hello"` — строка из пула строк Когда вы пишете:
String str1 = "Hello";
🚩`new String("Hello")` — создание нового объекта Когда вы создаёте строку так:
String str2 = new String("Hello");
🚩Разница в сравнении строк
public class StringTest {
    public static void main(String[] args) {
        String str1 = "Hello";
        String str2 = "Hello";
        String str3 = new String("Hello");

        System.out.println(str1 == str2); // true (ссылаются на один объект в пуле)
        System.out.println(str1 == str3); // false (разные объекты в памяти)
        System.out.println(str1.equals(str3)); // true (содержимое одинаковое)
    }
}
🚩Когда использовать `new String()`? В 99% случаев new String() не нужен. Его создание расходует память и снижает производительность. Но он может быть полезен, если вы намеренно хотите создать новый объект, например, для защиты от изменения ссылок:
String safeCopy = new String(originalString); // Теперь это точно отдельный объект
Ставь 👍 и забирай 📚 Базу знаний

🤔 Как устроена строка "под капотом"? Строка (String) является иммутабельным объектом, хранящимся в куче (heap). Под капотом строка представлена массивом char[] (до Java 9) или byte[] с дополнительной кодировкой (Compact Strings в Java 9+), что снижает потребление памяти. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

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

🤔 Что знаешь об интерфейсе FileFilter? FileFilter — это интерфейс в пакете java.io, используемый для фильтрации файлов в каталогах. Он применяется в методе listFiles(FileFilter filter) класса File и позволяет выбрать только те файлы, которые соответствуют заданным критериям. 🚩Как работает `FileFilter`? Этот интерфейс содержит всего один метод:
boolean accept(File pathname);
🚩Пример использования `FileFilter` Допустим, мы хотим отфильтровать все файлы .txt в заданной папке:
import java.io.File;
import java.io.FileFilter;

public class TxtFileFilterExample {
    public static void main(String[] args) {
        File directory = new File("C:/example"); // Укажите свою папку

        // Используем FileFilter для выбора файлов с расширением .txt
        FileFilter txtFilter = new FileFilter() {
            @Override
            public boolean accept(File file) {
                return file.isFile() && file.getName().endsWith(".txt");
            }
        };

        // Получаем список файлов, соответствующих фильтру
        File[] txtFiles = directory.listFiles(txtFilter);

        // Выводим найденные файлы
        if (txtFiles != null) {
            for (File file : txtFiles) {
                System.out.println("Файл: " + file.getName());
            }
        }
    }
}
Выходные данные (если в папке C:/example есть файлы .txt)
Файл: notes.txt
Файл: tasks.txt
🚩Lambda-версия (Java 8+) Вместо анонимного класса можно использовать лямбда-выражение:
FileFilter txtFilter = file -> file.isFile() && file.getName().endsWith(".txt");
🚩Разница между `FileFilter` и `FilenameFilter` FileFilter принимает объект File, позволяя фильтровать как файлы, так и каталоги. FilenameFilter принимает только имя файла (без пути).
import java.io.File;
import java.io.FilenameFilter;

public class TxtFilenameFilterExample {
    public static void main(String[] args) {
        File directory = new File("C:/example");

        // Фильтр для файлов .txt
        FilenameFilter txtFilter = (dir, name) -> name.endsWith(".txt");

        String[] txtFiles = directory.list(txtFilter);
        if (txtFiles != null) {
            for (String file : txtFiles) {
                System.out.println("Файл: " + file);
            }
        }
    }
}
Ставь 👍 и забирай 📚 Базу знаний

Онлайн-интенсив для ИТ-специалистов в Открытых школах Т1 Уже есть опыт работы в ИТ, но хочешь прокачать скилы и продвинуться в карьере? Тогда скорее залетай на бесплатный ИТ-интенсив в Открытых школах Т1. Открытые школы — это возможность усилить свои навыки и получить оффер в ИТ-холдинг Т1. И все это за месяц, онлайн и в удобное вечернее время. Что ты получишь? ✅ бесплатное обучение в гибком формате: по вечерам, онлайн, из любого города РФ и РБ. ✅ материалы от HR для прокачки резюме и подготовки к интервью в Т1. ✅ много практики и уникальный рыночный опыт. ✅ поддержку опытных преподавателей и карьерный фаст-трек до мидла в Т1 для лучших выпускников. ✅ реальный шанс получить оффер в Т1. Более 1000 специалистов уже прошли этот путь — теперь твоя очередь! Регистрация до 14 марта! Подать заявку #реклама 16+ t1.ru О рекламодателе

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

Крупнейший университет искусственного интеллекта Приглашаем на бесплатный однодневный интенсив по AI! Освой искусственный инт
Крупнейший университет искусственного интеллекта Приглашаем на бесплатный однодневный интенсив по AI! Освой искусственный интеллект для профессионального роста: создавай нейросети, автоматизируй бизнес-задачи и зарабатывай на AI-решениях. ✨ 8 000+ студентов со всего мира ✨ 600+ AI-проектов, созданных студентами ✨ Сборная Университета — победители крупнейших AI-хакатонов России ✨ Стажировки в крупнейших компаниях России (РЖД, Ростелеком, РУДН, Совкомбанк, Самолет и другие) ✨ Трудоустраиваем выпускников в крупнейшие компании (Яндекс, ВТБ, Сбербанк, Роскосмос и другие) Будем рады видеть тебя в наших рядах! Узнать больше #реклама 16+ neural-university.ru О рекламодателе

🤔 Что такое xml? XML (Extensible Markup Language) — это расширяемый язык разметки, который используется для хранения и передачи данных в формате, удобном для чтения как человеком, так и машиной. 🚩Зачем нужен XML? XML используется для структурированного хранения информации. Он позволяет определять собственные теги и организовывать данные в удобном формате. Основные применения: Обмен данными между системами (например, между сервером и клиентом). Конфигурационные файлы (например, web.xml в Java). Хранение данных (например, в файлах настроек, документах). Веб-сервисы (SOAP использует XML для передачи сообщений). 🚩Как устроен XML? XML-документ состоит из элементов (тегов), которые образуют древовидную структуру. Пример простого XML:
<?xml version="1.0" encoding="UTF-8"?>
<person>
    <name>Иван</name>
    <age>30</age>
    <city>Москва</city>
</person>
🚩Как XML используется в Java? В Java XML часто используется для работы с конфигурациями и веб-сервисами. Популярные библиотеки для работы с XML: DOM (Document Object Model) — загружает весь XML-файл в память, создавая дерево элементов. SAX (Simple API for XML) — обрабатывает XML последовательно, без загрузки в память. JAXB (Java Architecture for XML Binding) — позволяет преобразовывать Java-объекты в XML и обратно.
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlRootElement;
import jakarta.xml.bind.JAXBContext;
import jakarta.xml.bind.JAXBException;
import jakarta.xml.bind.Marshaller;
import java.io.StringWriter;

@XmlRootElement
class Person {
    private String name;
    private int age;

    public Person() {} // Пустой конструктор нужен для JAXB

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    @XmlElement
    public String getName() { return name; }

    @XmlElement
    public int getAge() { return age; }
}

public class Main {
    public static void main(String[] args) throws JAXBException {
        Person person = new Person("Иван", 30);
        JAXBContext context = JAXBContext.newInstance(Person.class);
        Marshaller marshaller = context.createMarshaller();
        marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);

        StringWriter writer = new StringWriter();
        marshaller.marshal(person, writer);

        System.out.println(writer.toString());
    }
}
Вывод
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<person>
    <name>Иван</name>
    <age>30</age>
</person>
Ставь 👍 и забирай 📚 Базу знаний

Как пройти ИТ-собеседование Ты айтишник и меняешь работу? Подготовься к собеседованиям заранее Регистрируйся на воркшоп, где
Как пройти ИТ-собеседование Ты айтишник и меняешь работу? Подготовься к собеседованиям заранее Регистрируйся на воркшоп, где ты узнаешь: — Как подготовиться к собеседованию в ИТ — Как презентовать свой опыт так, чтобы тебя запомнили — Как проверяют hard skills и как к этому подготовиться — Как произвести хорошее впечатление, запомниться рекрутеру и сделать так, чтобы захотели работать именно с тобой Встречаемся 20 марта 18:00 на бесплатном воркшопе. Регистрируйся и получи ценные советы от эксперта. Зарегистрироваться #реклама 16+ my.mts-link.ru О рекламодателе

🤔 Что такое Garbage Collector? Это механизм автоматического управления памятью, который освобождает память, занятую объектами, к которым больше нет ссылок. Это помогает избежать утечек памяти и повышает производительность. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Массив — статическая структура данных или динамическая? 🟠Почему массив – статическая структура? Фиксированный размер – при создании массива его длина задаётся раз и навсегда. Нельзя изменить размер – нельзя добавить или удалить элементы после создания массива.
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]
    }
}
Ставь 👍 и забирай 📚 Базу знаний

Курсы Data Science от karpov.courses. С нуля до PRO Обучаем с нуля востребованным IT-профессиям и помогаем построить новую ка
Курсы Data Science от karpov.courses. С нуля до PRO Обучаем с нуля востребованным IT-профессиям и помогаем построить новую карьеру! ✨Специализации: Комплексные программы обучения с упором на практику, которые помогут начать карьеру в IT или углубить имеющиеся знания. 📊Симуляторы: Короткие интенсивы с практикой на настоящей инфраструктуре, позволяющие получить опыт решения рабочих задач. 🎓Программы с вузами: Программы, сочетающие в себе академическую экспертизу ведущих вузов с гибкостью формата и пониманием требований рынка со стороны karpov.courses. 💻Бесплатные курсы: Учебные программы, которые помогут освоить востребованные инструменты и получить навыки, необходимые для развития в IT. ❤️74,5% наших выпускников уже нашли интересную работу Оставьте заявку сейчас и сделайте шаг к успешной карьере в IT! Узнать больше #реклама 16+ karpov.courses О рекламодателе

🤔 Чем примечательна Java в контексте платформы? Работает по принципу "Write Once, Run Anywhere" (WORA): код компилируется в байт-код, который может исполняться на любой JVM. Она обеспечивает высокую безопасность и независимость от платформы. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Какая коллекция реализует дисциплину обслуживания FIFO? FIFO (First-In, First-Out) – это принцип обработки данных: "первым вошёл – первым вышел". 🟠Коллекции, реализующие FIFO Пример работы FIFO с Queue
import java.util.*;

public class FifoExample {
    public static void main(String[] args) {
        Queue<String> queue = new LinkedList<>(); // Можно заменить на ArrayDeque

        queue.add("Первый");
        queue.add("Второй");
        queue.add("Третий");

        System.out.println(queue.poll()); // Первый
        System.out.println(queue.poll()); // Второй
        System.out.println(queue.poll()); // Третий
    }
}
🟠Разница `poll()`, `remove()` и `peek()`
Queue<Integer> queue = new LinkedList<>();
queue.add(10);
System.out.println(queue.peek());  // 10 (но не удаляет)
System.out.println(queue.poll());  // 10 (удаляет)
System.out.println(queue.poll());  // null (очередь пуста)
Ставь 👍 и забирай 📚 Базу знаний

Вебинар про UserGate SIEM ⚡ Отечественные компании каждый день сталкиваются с различными рисками и угрозами, часть из которых
Вебинар про UserGate SIEM ⚡ Отечественные компании каждый день сталкиваются с различными рисками и угрозами, часть из которых помогает закрыть отказоустойчивость. 📊Спикеры: - Дмитрий Чеботарев, менеджер по развитию UserGate SIEM; - Дмитрий Богданов, ведущий инженер UserGate. ✅ Расскажут об отказоустойчивости и кластеризации и о том, для чего они нужны; ✅ Покажут кейсы использования. Зарегистрироваться #реклама 16+ webinar.usergate.com О рекламодателе

🤔 Какие элементы из функционального программирования появились в Java 8? - Лямбда-выражения: Упрощают написание анонимных функций. - Stream API: Позволяет работать с потоками данных (фильтрация, преобразование, сбор). - Optional: Для работы с отсутствующими значениями. - Функциональные интерфейсы: Например, Function, Predicate, Supplier. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Расскажи что такое inversion of Conrol Inversion of Control (IoC) — это принцип проектирования, при котором управление созданием и жизненным циклом объектов передаётся внешней системе. 🟠Почему нужен IoC? Без IoC код сильно зависит от конкретных классов, что усложняет тестирование и поддержку.
class Car {
    private Engine engine;

    public Car() {
        this.engine = new Engine(); // Прямое создание зависимости ❌
    }
}
С IoC (зависимость передаётся извне)
class Car {
    private final Engine engine;

    public Car(Engine engine) { // Зависимость передаётся через конструктор
        this.engine = engine;
    }
}
🟠Как реализуется IoC? IoC достигается через паттерны проектирования, такие как: Dependency Injection (DI) – передача зависимостей извне (через конструктор, поле или метод). Factory Method – создание объектов через фабрики. Event-driven подход – реакция на события вместо явного вызова методов. 🟠IoC в Spring Spring реализует IoC через контейнер IoC, который управляет созданием объектов (бинов) и их зависимостями.
@Component
class Engine {}

@Component
class Car {
    private final Engine engine;

    @Autowired
    public Car(Engine engine) { // Spring автоматически передаст нужный объект
        this.engine = engine;
    }
}
Ставь 👍 и забирай 📚 Базу знаний