Разлика между статичното и окончателното в Java

Съдържание:

Разлика между статичното и окончателното в Java
Разлика между статичното и окончателното в Java

Видео: Разлика между статичното и окончателното в Java

Видео: Разлика между статичното и окончателното в Java
Видео: Статическое электричество Откуда появляется и как бороться дома и на производстве 2024, Ноември
Anonim

Ключова разлика - статично срещу финал в Java

Всеки език за програмиране има специфичен синтаксис. Програмистът трябва да следва тези синтаксиси, когато пише програми. Ключовите думи на езиците за програмиране имат специфично значение според задачите. Те се предоставят от езика за програмиране и не могат да се използват за дефинирани от потребителя променливи, методи, класове и т.н. Статичните и окончателните са две ключови думи в Java. Тази статия разглежда разликата между статичното и окончателното в Java. Ключовата разлика между static и final в Java е, че static се използва за дефиниране на член на класа, който може да се използва независимо от всеки обект на класа, докато final се използва за деклариране на константна променлива или метод, който не може да бъде заменен или клас, който не може да се наследи.

СЪДЪРЖАНИЕ

1. Общ преглед и ключова разлика

2. Какво е статично в Java

3. Какво е окончателно в Java

4. Прилики между статичното и окончателното в Java

5. Сравнение едно до друго - статично срещу окончателно в Java в таблична форма

6. Резюме

Какво е статично в Java?

Класът се състои от членове на данни (атрибути) и методи. За да се извикат методите, трябва да има обект от този специфичен клас. Когато методът е деклариран като статичен, не е необходимо да се създава обект за извикване на този метод. Методът може да бъде извикан с помощта на името на класа. Вижте програмата по-долу.

Разлика между статичното и окончателното в Java
Разлика между статичното и окончателното в Java

Фигура 01: Програма Java със статични променливи и статичен метод

Според горната програма клас A съдържа числова променлива и метод на показване. И двамата са статични членове. Следователно не е необходимо да се създава обект за достъп до числовата променлива и метода на показване. Програмистът може директно да напише името на класа, за да отпечата номера и да извика дисплея на метода. Така че, няма нужда да създавате екземпляр на обект. Ако числовата променлива и методът на показване са нестатични, тогава трябва да има обект от тип А.

Разлика между статичното и окончателното в Java Figure 02
Разлика между статичното и окончателното в Java Figure 02

Фигура 02: Използване на статичен блок

Горната програма съдържа статичния блок и основния метод. Статичният блок се извиква, когато класът се зареди. Следователно изразът в статичния блок се изпълнява преди израза в основния блок. Ако има много статични блокове, те ще се изпълняват последователно.

Какво е окончателно в Java?

В програмата може да има променливи от различен тип. Ако има променлива като int x = 1; по-късно в програмата тази променлива стойност може да бъде променена на друга стойност. Променлива, която е декларирана като окончателна и инициализирана със стойност, не може да бъде променена по-късно в програмата.

Разлика между статичното и окончателното в Java Figure 03
Разлика между статичното и окончателното в Java Figure 03

Фигура 03: Програма с окончателна променлива и наследяване

Според горната програма x е крайна променлива. Присвоява му се стойност 5. Не може да се променя някаква друга стойност, защото е декларирана като окончателна. Java поддържа обектно-ориентирано програмиране (OOP). Един от стълбовете на ООП е полиморфизъм. Един тип полиморфизъм е надмощен. Клас A има метод на показване. Класът B разширява клас A и той има свой собствен метод на показване. Когато създавате обект от тип B и извиквате метода на показване, ще се отпечата „B“като изход. Методът на показване на клас A е заменен от метода на показване на клас B.

Ако програмистът какво да избягва да замени метод, той може да използва последната ключова дума за този метод. Ако методът на показване в клас A е окончателен, методът на показване в B ще даде грешка, тъй като този метод не може да бъде заменен.

Разлика между статичното и окончателното в Java Figure 04
Разлика между статичното и окончателното в Java Figure 04

Фигура 04: последна ключова дума в метода

Друг стълб на ООП е наследяването. Помага за повторното използване на вече съществуващия код. Новият клас може да се разшири от съществуващия клас и да използва членовете на данните и методите на съществуващия клас. Ако се изисква да се спре наследяването на клас, програмистът може да използва ключовата дума 'final'. Вижте програмата по-долу.

Ke3y Разлика между статичното и окончателното в Java
Ke3y Разлика между статичното и окончателното в Java

Фигура 05: последна ключова дума в класа

Съгласно горната програма клас А се обявява за окончателен. Когато клас B разширява A, той дава грешка, защото клас A е деклариран като окончателен. Не може да се наследи от други класове.

Каква е приликата между static и final в Java?

И статичните, и финалните са ключови думи в Java

Каква е разликата между static и final в Java?

Различна статия Средна преди таблица

static срещу final в Java

Static ключова дума означава, че променлива член или метод може да бъде достъпен, без да се изисква екземпляр на класа, към който принадлежи. Крайната ключова дума обозначава обект, който може да бъде присвоен само веднъж.
Променливи
Статичните променливи могат да бъдат инициализирани повторно. Крайните променливи не могат да бъдат инициализирани отново.
Методи
Може да бъде извикан от други статични методи и да има достъп само до статичните членове на класа. Крайните методи не могат да бъдат заменени.
Клас
Обектът на статичния клас не може да бъде създаден. Той съдържа само статични членове. Последният клас не може да бъде наследен от други класове.
Блок
Ключовата дума static може да се използва в блок. Крайната ключова дума не се използва с блок.

Резюме - static срещу final в Java

Тази статия обсъжда две ключови думи в Java като static и final. Разликата между static и final в Java е, че static се използва за дефиниране на член на класа, който може да се използва независимо от всеки обект на класа, докато final се използва за деклариране на константна променлива или метод, който не може да бъде заменен или клас, който не може да бъде наследен.

Препоръчано: