РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
68 of 1163 menu

Ключевое слово final

Ключевое слово final в Java используется для запрета изменения. Для переменной оно означает, что значение можно присвоить только один раз. Для метода - что его нельзя переопределить в дочернем классе. Для класса - что от него нельзя наследоваться. Ключевое слово final пишется перед объявлением переменной, метода или класса.

Синтаксис

final int value = 10; // final переменная final void method() { } // final метод final class MyClass { } // final класс

Пример

Давайте объявим final переменную и попробуем присвоить ей новое значение. Такой код не скомпилируется:

public class Main { public static void main(String[] args) { final int num = 5; num = 10; // ошибка компиляции System.out.println(num); } }

Компилятор выдаст ошибку, потому что переменной с ключевым словом final нельзя повторно присваивать значение.

Пример

Давайте объявим final переменную и просто выведем ее значение:

public class Main { public static void main(String[] args) { final int num = 5; System.out.println(num); } }

Результат выполнения кода:

5

Пример

Давайте попробуем наследоваться от final класса. Такой код не скомпилируется:

final class Parent { } class Child extends Parent // ошибка компиляции { } public class Main { public static void main(String[] args) { System.out.println("abcde"); } }

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

Пример

Давайте попробуем переопределить final метод в дочернем классе. Такой код не скомпилируется:

class Parent { final void show() { System.out.println("parent"); } } class Child extends Parent { void show() // ошибка компиляции { System.out.println("child"); } } public class Main { public static void main(String[] args) { Child child = new Child(); child.show(); } }

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

Смотрите также

  • ключевое слово static,
    которое делает член класса общим для всех объектов
  • ключевое слово abstract,
    которое запрещает создание объекта класса
  • ключевое слово extends,
    которое наследует один класс от другого
  • ключевое слово inheritance,
    которое описывает наследование классов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить