Встречается на собеседованиях • сегодня

Почему анонимные классы все еще существуют

Анонимные классы в Java остаются полезными для коротких одноразовых реализаций интерфейсов или абстрактных классов, особенно в UI-библиотеках (например, Swing/AWT) или при работе с коллбэками. Они компактнее обычных классов и позволяют инкапсулировать логику прямо в месте использования.

Пример:

java
button.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {
        System.out.println("Кнопка нажата!");
    }
});

Плюсы:

  • Быстрое создание без объявления отдельного класса.
  • Доступ к final/effectively final переменным внешнего метода.

Но:
С появлением лямбда-выражений (Java 8+) анонимные классы стали менее востребованными для интерфейсов с одним методом (FunctionalInterface). Однако они всё ещё нужны для:

  • Реализации интерфейсов с несколькими методами.
  • Переопределения конкретных методов класса (не только интерфейсов).
  • Случаев, где требуется явное указание типа (лямбды не всегда подходят).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы