Локальный класс — это класс, определенный внутри блока, например метода, конструктора или инициализатора.
Особенности локальных классов:
- Область видимости: Доступен только в том блоке, где он определен.
- Nicht-статический: Не может быть объявлен как
static.
- Доступ к локальным переменным: Может обращаться к
final или эффективно final локальным переменным и параметрам enclosing блока.
- Не может иметь модификаторы доступа: Нельзя использовать
public, private, protected.
- Наследует от классов и реализует интерфейсы: Может расширять другие классы и реализовывать интерфейсы.
- Именование: Не может содержать модификатор
strictfp и не может быть объявлен как enum.
Пример:
java