Назад к вопросам
Junior
72
questionbank
Что такое анонимный класс?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Анонимный класс — это локальный класс без имени. Он объявляется и одновременно инстанцируется (создается объект) в одном выражении. Используется для создания объектов, которые будут использованы только один раз, например, для реализации интерфейса или расширения существующего класса "на лету".
Основные характеристики:
- Нет явного имени.
- Не может иметь конструкторов (но может иметь инициализаторы экземпляра и статические инициализаторы).
- Не может быть абстрактным, статическим или публичным.
- Имеет доступ к final или эффективно final локальным переменным из внешнего контекста.
Пример использования для реализации интерфейса Runnable:
new Runnable() {
@Override
public void run() {
// Код, который будет выполнен
}
};
Пример использования для расширения класса Button:
new Button(context) {
@Override
public boolean onTouchEvent(MotionEvent event) {
// Обработка события касания
return super.onTouchEvent(event);
}
};
Преимущества:
- Лямбда-выражения (в Java 8+) часто являются более лаконичной альтернативой для простых случаев.