В чем разница между final vs. finally vs. finalize
- final - ключевое слово в Java, которое используется для объявления постоянных значений, отмечает классы, методы и переменные, над которыми нельзя производить наследование, переопределение или изменение.
- finally - блок, используемый в Java для выполнения кода независимо от того, возникло ли исключение в блоке try или нет.
- finalize - метод в Java, который вызывается сборщиком мусора перед уничтожением объекта, позволяет объекту провести очистку перед удалением из памяти.
- Ключевое слово final используется для обозначения, что сущность должна оставаться неизменной, будь то переменная, метод или класс. Например, если переменная объявлена как final int x = 10;, то значение этой переменной не может быть изменено после присваивания.
- Блок finally используется в паре с блоком try-catch для обеспечения надежного завершения операций, независимо от того, возникло исключение или нет. Код в блоке finally выполнится всегда, после того как выполнится блок try, и даже если выбросится исключение.
- Метод finalize является методом в классе Object, который можно переопределить в своем классе для проведения очистки ресурсов перед уничтожением объекта сборщиком мусора. Однако, его использование не рекомендуется, так как время его вызова и сам факт вызова не гарантированы.
Например, использование ключевого слова final для переменной:
Пример использования блока finally:
Отметьте свой прогресс