> For the complete documentation index, see [llms.txt](https://comaqa.gitbook.io/java-automation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://comaqa.gitbook.io/java-automation/oop-v-java/modifikatory-static-i-final.md).

# Модификаторы static и final

**final** — это модификатор, позволяющий объявлять константные поля в классе. Если у вас есть некоторое свойство проектируемого вами объекта, значение которого не будет меняться, то вы можете воспользоваться этим модификатором. Любая попытка переопределить значение поля с модификатором final приводит к выбросу исключения.

**Static** поле: существует на уровне класса, а не объекта; Для каждого класса создается только один экземпляр статической переменной (переменой класса).

При описании статических переменных должны быть выполнены следующие правила:

* статические переменные должны быть объявлены вне всякого метода;
* статические переменные могут быть инициализированы при их объявлении или блоком кода, отмеченного ключевым словом static, и также расположенным вне метода.

Вопрос 1

```
Приведите по одному примеру ситуации, когда нам могут понадобиться модификаторы final и static.
```
