Ответ на #вопрос17
Поскольку у нас не получится присвоить новое значение для final переменной, кажется, что это переменные константы.
Но это только на первый взгляд. Если тип данных, на который ссылается переменная — immutable, то да, это константа. А если тип данных mutable, то есть изменяемый, при помощи методов и переменных можно будет изменить значение объекта, на который ссылается final переменная, и в таком случае назвать ее константой нельзя.
Так вот, на примере видно, что часть финальных переменных действительно константы, а часть — нет, и их можно изменить.
Поскольку у нас не получится присвоить новое значение для final переменной, кажется, что это переменные константы.
Но это только на первый взгляд. Если тип данных, на который ссылается переменная — immutable, то да, это константа. А если тип данных mutable, то есть изменяемый, при помощи методов и переменных можно будет изменить значение объекта, на который ссылается final переменная, и в таком случае назвать ее константой нельзя.
Так вот, на примере видно, что часть финальных переменных действительно константы, а часть — нет, и их можно изменить.