Този блог ще разработи подробно използването на ключовата дума „final“ в Java.
Коя е „крайната“ ключова дума в Java?
„ финал ” в Java се използва за ограничаване на потребителя от презаписване на стойност. Работи така, че ако дадена променлива или функция е определена като окончателна, нейната стойност не може да бъде презаписана.
Java“ финал ” може да се използва в много контексти:
Пример 1: Използване на „крайна“ ключова дума с променлива
В този пример „ финал ” може да се асоциира с променлива и да се презапише, за да се анализира нейното използване:
финал вътр резултат = 35 ;
резултат = Четири пет ;
Система . навън . println ( резултат ) ;
В горния кодов фрагмент:
- Първо, инициализирайте посочената целочислена стойност и асоциирайте „ финал ” с него, за да направи стойността му непроменим.
- В следващата стъпка презапишете цялото число с друга стойност и го покажете.
- Това ще доведе до показване на грешка, тъй като стойността, свързана с обсъжданата ключова дума, не може да бъде презаписана.
Изход
В горния изход, срещаното изключение показва, че стойността, свързана с „ финал ” ключова дума не може да бъде презаписана.
Пример 2: Използване на „крайна“ ключова дума с функция
В тази илюстрация обсъжданата ключова дума може да се използва с натрупана функция в класа:
класен родител {публичен финал невалиден навън ( ) {
Система . навън . println ( „Това е функцията по подразбиране“ ) ;
} }
класchildextendsparent {
публичен невалиден навън ( ) {
Система . навън . println ( „Това е отменена функция“ ) ;
} }
дете об = нов дете ( ) ;
обект навън ( ) ;
В горните редове код:
- Първо, дефинирайте родителски клас с име „ родител ”.
- В рамките на класа дефинирайте функция с име „ извън() ”, свързано с „ финал ” и покажете посоченото съобщение.
- След това създайте дъщерен клас с име „ дете ' наследяване на родителския клас с помощта на ' се простира ” ключова дума.
- В този клас декларирайте функцията „ извън() ”, идентичен с функцията на наследения клас, показваща даденото съобщение.
- Като цяло създайте обект от „ дете ” и извикване на посочената идентична функция.
Изход
Изправеното ограничение в горния изход означава, че идентичната функция не може да бъде заменена.
Пример 3: Използване на „крайна“ ключова дума с клас
В този конкретен пример клас може да бъде разпределен като „ финал ” и след това може да бъде проверен, като го наследи от неговия дъщерен клас:
finalclassparent {публичен финал невалиден out1 ( ) {
Система . навън . println ( „Това е родителският клас“ ) ;
} }
класchildextendsparent {
публичен невалиден out2 ( ) {
Система . навън . println ( „Това е детски клас“ ) ;
} }
дете об = нов дете ( ) ;
обект out1 ( ) ;
Приложете посочените по-долу стъпки, както е дадено в горните редове на кода:
- Първо, дефинирайте клас с име „ родител ”, свързано с „ финал ”, за да се въздържате от наследяване.
- В рамките на класа дефинирайте предоставената функция и покажете даденото съобщение.
- След това инициализирайте дъщерния клас „ дете ' наследяване на родителския клас чрез ' се простира ” ключова дума.
- В този клас също така декларирайте функция с име „ изход2() ” и отпечатате посоченото съобщение в неговата (функционална) дефиниция.
- И накрая, в main създайте обект на дъщерния клас и извикайте функцията на родителския клас “ изход1() ”.
- Това ще регистрира грешка, тъй като класът, определен като окончателен, не може да бъде наследен.
Изход
В този изход може да се види, че е хвърлено изключение, тъй като функцията на родителския клас не може да бъде извикана от дъщерния клас.
Заключение
„ финал ” в Java се използва, за да се въздържа потребителят от презаписване на стойност. Тази ключова дума може да бъде свързана с променлива, функция или клас и т.н. При модифициране или наследяване (в случай на клас) нейната стойност, тя записва грешка. Тази статия обсъжда използването на ключовата дума final в Java.