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

Съдържание:

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

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

Видео: Разлика между окончателно финализиране и финализиране в Java
Видео: Советский мотороллер - а ВАМ НРАВИТСЯ ?? 2024, Може
Anonim

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

Final, final и finalize са често срещани термини, използвани в Java програмирането. Последният е ключова дума. Може да се използва за променливи, методи или класове. Променливите, декларирани като окончателни, трябва да се инициализират само веднъж. Те не могат да бъдат променяни. Тъй като Java е език, който поддържа обектно ориентирано програмиране, той позволява създаването на класове от съществуващи класове за подобряване на повторната употреба на кода. Понякога може да се наложи да се избягва използването на съществуващите класове. За това може да се използва окончателен. При програмирането може да има грешки и е важно да се борави с тях, за да се изпълни правилно програмата. Финализирането е метод, извикан от събирача на боклука. Така че всички тези термини имат различно значение съответно. Final е ключова дума, която предотвратява промяната на променливите, избягва заместването на метода и избягва разширяването на класовете. Накрая е блок в обработката на изключения, който ще изпълни дали изключение е хвърлено или не. Финализирането е метод, извикан от събирача на боклука, преди да унищожи обекта напълно. Това е ключовата разлика окончателно и финализиране в Java.

СЪДЪРЖАНИЕ

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

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

3. Какво е най-накрая в Java

4. Какво е финализирано в Java

5. Прилики между final окончателно и финализирано в Java

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

7. Резюме

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

Final е ключова дума в Java. Тъй като Java поддържа обектно-ориентирано програмиране, подкласовете могат да използват променливите и методите на вече съществуващ клас. Вече съществуващият клас е суперкласът, докато новият клас е подкласът. Ако програмистът иска да предотврати променливата, достъпна от други класове, той може да декларира променливата като „окончателна“. Например, приемете, че има променлива като p. Той се декларира като окончателен и инициализира стойността 10. напр. Final int p = 10. Ако p стойността се промени отново на 20, това ще доведе до грешка по време на компилация. Крайната ключова дума предотвратява промяната на стойността на променливата.

Клас може да използва метод, който вече е в съществуващ клас. Да приемем, че има клас, наречен B, който има метод display (). Новият клас е C и той разширява клас B. Ако клас C също има метод, наречен display (), тогава оригиналният метод display B) е заменен. Ако програмистът иска да избегне замяна на метода, той може да използва ключовата дума накрая. напр. окончателно показване на празнота () {}. Осъществяването на окончателен метод гарантира, че функционалността на метода никога няма да бъде променена.

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

Фигура 01: окончателен, окончателен и финализиран

Възможно е също да използвате крайната ключова дума за клас. Новият клас не може да наследява променливи и методи на краен клас. Това е полезно за повишаване на сигурността. Тъй като класът е възпрепятстван да се използва от подкласовете, данните са защитени.

Какво най-накрая има в Java?

При програмирането може да има грешки. Грешките могат да причинят неправилни изходи или да прекратят изпълнението на програма. Важно е да се използва някакъв механизъм за предотвратяване на тези неочаквани резултати. Грешките могат да бъдат два вида. Те са съставени грешки във времето и грешки по време на изпълнение. Грешките във времето на компилиране възникват поради синтактични грешки. Някои често срещани грешки по време на компилация липсват точка и запетая, липсват фигурни скоби, грешно изписани идентификатори, ключови думи и недекларирани променливи Компилаторът няма да създаде.class файла, докато тези грешки не бъдат отстранени.

Понякога може да има програми, които се компилират правилно, но дават грешен изход. Те се наричат грешки по време на изпълнение. Някои често срещани грешки по време на работа са гмуркане на цяло число с нула и достъп до елемент, който е извън границите на масив. Тези грешки няма да причинят грешка по време на компилация, но изходът е неправилен. Изключение е състояние, което е причинено от грешка по време на изпълнение в програмата.

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

В Java се използва опит за кода, който е вероятно да причини грешка и да изведе изключение. Уловът се използва за обработка на изключението, хвърлено от блока try. Може да има множество изявления за улов. Операторите final могат да се използват за обработка на изключение, което не е уловено от нито един от предишните изрази catch. Блокът окончателно ще се изпълни независимо дали е хвърлено изключение или не. Вижте дадения пример.

int p = 10, q = 5, r = 5;

int отговор;

опитвам{

отговор = p / (q - r);

}

catch (ArithmeticException e) {

System.out.println („Разделено на нула“);

}

накрая {

System.out.println („Най-накрая блокът се изпълнява“);

}

Според горния пример стойността p е разделена на нула и това ще доведе до изключение. Следователно се улавя от изявлението за улов. Ще отпечата съобщението, разделено на нула. Блокът final ще се изпълни независимо дали е възникнало изключение или не. След съобщението Разделено на нула ще се покаже съобщението в блока окончателно. Следователно, накрая е блок, използван при обработка на изключения.

Какво е финализирането в Java?

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

Някои обекти могат да съдържат не-обектни ресурси. Един пример е дескриптор на файл. В тези ситуации събирачът на боклук извиква метода на финализиране. напр. финализиране (). Този метод извършва обработка за почистване непосредствено преди обектът да бъде събран.

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

Всички окончателни, окончателни и финализирани в Java се използват в Java програмирането

Каква е разликата между окончателно финализиране и финализиране в Java?

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

финал срещу окончателно срещу финализиране

финал Final е ключова дума в Java, която предотвратява промяната на променливите, избягва заместването на метода и избягва разширяването на класовете.
накрая Накрая е блок в обработката на изключения в Java, който ще изпълни дали изключение е хвърлено или не.
финализиране Финализирането е метод в Java, извикан от събирача на боклук, преди да унищожи обекта напълно.
Приложимост
финал Финалът е приложим за променливи, методи и класове.
накрая Най-накрая е приложимо с блокове try and catch.
финализиране Финалът е приложим за обекти.

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

Final, final и finalize са често срещани термини, използвани в Java Programming. Думите им изглеждат еднакви, но имат разлика. Final е ключова дума, която предотвратява промяната на променливите, избягва заместването на метода и избягва разширяването на класовете. Накрая е блок в обработката на изключения, който ще изпълни дали изключение е хвърлено или не. Финализирането е метод, извикан от събирача на боклука, преди да унищожи обекта напълно. Това е разликата между final, final и finalize в Java Programming.

Изтеглете PDF на final vs final vs finalize в Java

Можете да изтеглите PDF версията на тази статия и да я използвате за офлайн цели според бележката към цитата. Моля, изтеглете PDF версията тук: Разликата Betweeen финал накрая и финализиране в Java

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