Final может изменять классы, переменные-члены, локальные переменные и методы.
1. Окончательные измененные переменные-члены.
1. Инициализация конечных переменных-членов.
Для окончательно измененных переменных система не будет инициализировать их значением 0 по умолчанию.
метод инициализации переменной fina:
2. метод окончательной модификации
Когда Final используется для изменения метода, это означает, что этот метод не может быть переопределен подклассами.
3. окончательный модифицированный класс
Столбцы, измененные в финале, не могут быть унаследованы. Во время обработки компилятор рассматривает все свои методы как финальные, поэтому финальные классы более эффективны, чем обычные классы. Абстрактный столбец, определенный ключевым словом Abstract, содержит абстрактные методы, которые должны быть перегружены унаследованными от него подклассами, поэтому один и тот же класс не может быть изменен с помощью Final и Abstract одновременно. По той же причине Final нельзя использовать для изменения интерфейсов. Методы финального класса не могут быть переопределены. Но это не значит, что значения атрибутов финальных классов также неизменяемы. Если вы хотите сделать значение атрибута конечного класса неизменяемым, вы должны добавить к нему модификатор Final.
Операторfinally может использоваться только в операторах try/catch и сопровождается блоком операторов, указывающим, что этот оператор всегда будет выполняться в конечном итоге.
Сначала вычислите значение выражения после возврата и временно сохраните значение. Затем вычислите значение выражения после возврата. После расчета оно также будет временно сохранено.
В это время ранее сохраненное значение будет перезаписано. Наконец, вернитесь к предыдущему возврату, извлеките значение, из которого временно хранится переменная, и вернитесь. То есть такой результат был получен.