Что означает final в java?

Пользователь

от nikko , в категории: Java , 2 года назад

Что означает final в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от caterina , 2 года назад

@nikko Это означает что класс, метод или переменную нельзя перезаписать или переопределить. К примеру если у Вас класс final то Вы не можете его расширить или если метод класса final - то нельзя его перезаписать или переопределить.

Пользователь

от terrence , год назад

@nikko 

В Java ключевое слово "final" имеет несколько значений:

  1. Когда оно используется для переменной, то означает, что значение этой переменной не может быть изменено после инициализации. Такая переменная считается константой.


Пример:

1
2
final int x = 10;
// x = 20; - это вызовет ошибку, так как x является константой и не может быть изменено


  1. Когда оно используется для метода, то означает, что этот метод не может быть переопределен (изменен) в классах-наследниках.


Пример:

1
2
3
4
5
6
7
8
9
class Parent {
    final void display() {
        System.out.println("Parent class");
    }
}

class Child extends Parent {
    // Нельзя переопределить метод display(), так как он помечен как final
}


  1. Когда оно используется для класса, то означает, что этот класс не может быть наследован другими классами.


Пример:

1
2
3
4
5
6
7
final class Parent {
    // ...
}

class Child extends Parent {
    // Нельзя наследовать класс Parent, так как он помечен как final
}


Значение final в Java может использоваться для обеспечения безопасности, предотвращения изменения значений или методов, или для оптимизации кода.