Коротко: анонимный класс — это класс без имени, объявляемый «на месте» (обычно внутри метода или блока). Часто используется, чтобы сразу реализовать интерфейс или расширить класс там, где нужен одноразовый экземпляр.
Когда применяют
- Реализация интерфейса или абстрактного класса прямо в коде (например, для Runnable или обработчиков событий).
- Быстрая «встроенная» реализация без заводского класса.
- Они остаются полезны даже с Java 8: лямбды удобны для функциональных интерфейсов, но анонимные классы нужны, когда требуется больше методов, собственные поля или сложная логика наследования.
Важно: анонимный класс может обращаться к локальным переменным внешнего метода только если те final или effectively final.
Пример:
Runnable r = new Runnable() { @Override public void run() { System.out.println("Выполняю в анонимном классе"); }};new Thread(r).start();Полезные ресурсы по Java 👩💻| Наш канал в MAX 🟪