Galutinis, galutinis ir užbaigiamasis yra Java raktiniai žodžiai, kurie naudojami tvarkant išimtis. Kiekvienas iš šių raktinių žodžių turi skirtingą funkciją. Pagrindinis skirtumas tarp galutinio, galutinio ir galutinio yra tas galutinis yra prieigos modifikatorius, pagaliau yra išimčių tvarkymo ir užbaigti yra objektų klasės metodas.
Be to, yra daug skirtumų tarp galutinio, galutinio ir galutinio. Toliau pateikiamas galutinio, galutinio ir galutinio skirtumų sąrašas:
ponas Nr. | Raktas | galutinis | pagaliau | užbaigti |
---|---|---|---|---|
1. | Apibrėžimas | galutinis yra raktinis žodis ir prieigos modifikatorius, kuris naudojamas taikant apribojimus klasei, metodui ar kintamajam. | galiausiai yra „Java Exception Handling“ blokas, skirtas vykdyti svarbų kodą, neatsižvelgiant į tai, ar išimtis yra, ar ne. | Finalize yra Java metodas, naudojamas valymo apdorojimui atlikti prieš pat surenkant objektą. |
2. | Taikomas | Galutinis raktinis žodis naudojamas su klasėmis, metodais ir kintamaisiais. | Galiausiai blokas visada yra susijęs su try and catch bloku išimčių tvarkyme. | su objektais naudojamas finalize() metodas. |
3. | Funkcionalumas | (1) Paskelbtas galutinis kintamasis tampa pastovus ir jo negalima keisti. (2) galutinio metodo negali nepaisyti poklasis. (3) galutinė klasė negali būti paveldima. | (1) pagaliau blokas paleidžia svarbų kodą, net jei atsiranda išimtis ar ne. (2) pagaliau blokas išvalo visus bandomajame bloke panaudotus išteklius | užbaigimo metodas atlieka valymo veiksmus objekto atžvilgiu prieš jo sunaikinimą. |
4. | Vykdymas | Galutinis metodas vykdomas tik tada, kai jį iškviečiame. | Galiausiai blokas vykdomas, kai tik įvykdomas bandomasis blokas. Jo vykdymas nepriklauso nuo išimties. | užbaigimo metodas vykdomas prieš pat objekto sunaikinimą. |
Galutinis Java pavyzdys
Panagrinėkime šį pavyzdį, kuriame deklaruojame galutinį kintamąjį amžių. Paskelbtas jo negalima keisti.
FinalExampleTest.java
public class FinalExampleTest { //declaring final variable final int age = 18; void display() { // reassigning value to age variable // gives compile time error age = 55; } public static void main(String[] args) { FinalExampleTest obj = new FinalExampleTest(); // gives compile time error obj.display(); } }
Išvestis:
pervardyti katalogą linux
Aukščiau pateiktame pavyzdyje paskelbėme kintamąjį galutinį. Panašiai mes galime paskelbti metodus ir klases galutinius naudodami galutinį raktinį žodį.
Java pagaliau pavyzdys
Pažiūrėkime toliau pateiktą pavyzdį, kuriame „Java“ kodas pateikia išimtį, o gaudymo blokas tvarko tą išimtį. Vėliau galutinis blokas vykdomas po try-catch bloko. Be to, likusi kodo dalis taip pat vykdoma įprastai.
GaliausiaiPavyzdys.java
public class FinallyExample { public static void main(String args[]){ try { System.out.println('Inside try block'); // below code throws divide by zero exception int data=25/0; System.out.println(data); } // handles the Arithmetic Exception / Divide by zero exception catch (ArithmeticException e){ System.out.println('Exception handled'); System.out.println(e); } // executes regardless of exception occurred or not finally { System.out.println('finally block is always executed'); } System.out.println('rest of the code...'); } }
Išvestis:
„Java“ užbaigimo pavyzdys
FinalizeExample.java
public class FinalizeExample { public static void main(String[] args) { FinalizeExample obj = new FinalizeExample(); // printing the hashcode System.out.println('Hashcode is: ' + obj.hashCode()); obj = null; // calling the garbage collector using gc() System.gc(); System.out.println('End of the garbage collection'); } // defining the finalize method protected void finalize() { System.out.println('Called the finalize() method'); } }
Išvestis: