Змінні final в java

final int id = nextID ++;

final, як і звичайні локальні змінні, зобов'язані отримати значення до моменту їх першого використання.

застосування полів blank final виправдано і корисно в тих випадках, коли їх

Потужність змінюється в залежності аргументами конструктора, як в прикладі

final String name; // blank final

або якщо простого вираження ініціалізації мало зважаючи на складність завдання:

static final int [] numbers = numberList ();

static final int maxNumber; // максимальне з чисел

int max = numbers [0];

for (int i = 0; i

if (numbers [i]> max)

Компілятор перевіряє, ініційовані чи все поля statiс final після закінчення виконання коду статичних блоків ініціалізації, а нестатичні поля final по завершенні процесу конструювання об'єкта. Якщо будь-яка із зазначених умов не виконується, компілятор видає повідомлення

Локальні змінні blank final використовуються, наприклад, в тих ситуаціях,

коли значення, що підлягають привласненню, будь-яким чином залежать від значень інших змінних. Як і при роботі з звичайними локальними змінними, компілятор перевіряє, чи виконана ініціалізація змінної blank

final до моменту її першого використання.

Локальні змінні і параметри зазвичай оголошуються як final тільки

в тих випадках, коли вони допускають звернення з коду локального або анонімного внутрішніх класів, хоча деякі програмісти завжди позначають параметри методів ознакою final, на переконання або за звичкою.

Схожі статті