English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Подробное объяснение ключевого слова final в Java:
Введение:
Final ключевое слово в Java очень важно и может применяться к классам, методам и переменным. В этой статье я познакомлю вас с тем, что такое final ключевое слово? Что означает объявление переменных, методов и классов как final? Какие преимущества использования final? В конце также есть примеры использования final ключевое слово. Final часто используется вместе с static для объявления констант, и вы также увидите, как final улучшает производительность приложений.
Что означает ключевое слово final?
final в Java - это ключевое слово, которое может использоваться для объявления членов переменных, методов, классов и локальных переменных. Как только вы объявите ссылку как final, вы не сможете изменить эту ссылку, компилятор будет проверять код, и если вы попытаетесь перинициализировать переменную, компилятор выдаст ошибку компиляции.
Что такое final переменная?
Любая переменная, объявленная как final для членов переменных или локальных переменных (вариабли в методах или в блоках кода называются локальными переменными), называется final переменной. Final переменные часто используются вместе с ключевым словом static в качестве констант. Вот пример final переменной:
public static final String LOAN = "loan"; LOAN = new String("loan") //невалидная ошибка компиляции
final переменные являются только читаемыми.
Что такое final метод?
final также может быть использован для объявления методов. Перед методом ставится ключевое слово final, что означает, что этот метод не может быть переопределен методом subclasses. Если вы считаете, что функциональность метода уже достаточна полная и в subclasses не нужно вносить изменений, вы можете объявить этот метод как final. Final методы быстрее, чем nonfinal методы, потому что они статически связаны в компиляции и не требуют динамической связи в время выполнения. Вот пример final метода:
class PersonalLoan{}} public final String getName(){ return "personal loan"; {} {} class CheapPersonalLoan extends PersonalLoan{ @Override public final String getName(){ return "cheap personal loan"; // компиляционная ошибка: метод, переопределенный, является final} {} {}
Что такое final класс?
Класс, обозначенный ключевым словом final, называется final классом. Final классы обычно полные и не могут быть наследованы. В Java有许多 final классов, таких как String, Interger и другие обертки. Вот пример final класса:
final class PersonalLoan{ {} class CheapPersonalLoan extends PersonalLoan{ // компиляционная ошибка: не может наследоваться от final класса} {}
Преимущества ключевого слова final
Ниже мы кратко рассмотрим некоторые преимущества использования ключевого слова final
Неизменяемый класс
Для создания неизменяемого класса необходимо использовать ключевое слово final. Неизменяемый класс - это класс, объекты которого после их создания не могут быть изменены. Примером неизменяемого класса является String. Неизменяемые классы имеют множество преимуществ, таких как их объекты являются только читаемыми, могут безопасно совместно использоваться в многопоточных средах, не требуя дополнительных затрат на синхронизацию и т.д.
Важные знания о ключе final
private final int COUNT = 10;
Для объекта集合, объявленного как final, это означает, что ссылка не может быть изменена, но вы можете добавить, удалить или изменить содержимое. Например:
private final List Loans = new ArrayList(); list.add(“home loan”); //правильно list.add("personal loan"); //правильно loans = new Vector(); //не правильно
Мы уже знаем, что такое переменные final, методы final и классы final. Использование final по мере необходимости позволяет писать быстрее и лучше код.
Спасибо за чтение, надеюсь, это поможет вам, спасибо за поддержку нашего сайта!