Документация Java для Local Classes говорит, что:
Кроме того, локальный класс имеет доступ к локальным переменным. Однако локальный класс может обращаться только к локальным переменным, объявленным окончательным. Когда локальный класс обращается к локальной переменной или параметру охватывающий блок, он захватывает эту переменную или параметр. Например, конструктор PhoneNumber может получить доступ к локальной переменной numberLength потому что он объявлен окончательным; numberLength - захваченная переменная.
Что такое захваченная переменная, каково ее использование и зачем это нужно? Пожалуйста, помогите мне понять концепцию этого.