The final, finalize og finalize er nøkkelord i Java som brukes i unntakshåndtering. Hvert av disse søkeordene har en annen funksjonalitet. Den grunnleggende forskjellen mellom final, finalize og finalize er at endelig er en tilgangsmodifikator, endelig er blokken i Unntakshåndtering og fullføre er metoden for objektklassen.
Sammen med dette er det mange forskjeller mellom endelig, endelig og endelig. En liste over forskjeller mellom endelig, endelig og endelig er gitt nedenfor:
Mr. nei. | Nøkkel | endelig | endelig | fullføre |
---|---|---|---|---|
1. | Definisjon | final er nøkkelordet og tilgangsmodifikatoren som brukes til å bruke begrensninger på en klasse, metode eller variabel. | endelig er blokken i Java Exception Handling for å utføre den viktige koden enten unntaket inntreffer eller ikke. | finalize er metoden i Java som brukes til å utføre oppryddingsbehandling rett før objektet samles opp. |
2. | Gjelder for | Endelig nøkkelord brukes med klassene, metodene og variablene. | Til slutt er blokk alltid relatert til prøv og fang-blokken i unntakshåndtering. | finalize()-metoden brukes med objektene. |
3. | Funksjonalitet | (1) Når den er deklarert, blir den endelige variabelen konstant og kan ikke endres. (2) endelig metode kan ikke overstyres av underklasse. (3) sluttklasse kan ikke arves. | (1) til slutt kjører blokk den viktige koden selv om unntak oppstår eller ikke. (2) endelig blokk rydder opp alle ressursene som brukes i prøveblokken | finalize-metoden utfører rengjøringsaktivitetene med hensyn til objektet før det destrueres. |
4. | Henrettelse | Endelig metode utføres bare når vi kaller den. | Til slutt utføres blokken så snart try-catch-blokken er utført. Dens utførelse er ikke avhengig av unntaket. | finalize-metoden utføres rett før objektet blir ødelagt. |
Java siste eksempel
La oss vurdere følgende eksempel der vi erklærer endelig variabel alder. Når den først er erklært, kan den ikke endres.
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(); } }
Produksjon:
I eksemplet ovenfor har vi erklært en variabel final. På samme måte kan vi erklære metodene og klassene endelige ved å bruke det siste nøkkelordet.
Java endelig Eksempel
La oss se eksemplet nedenfor der Java-koden kaster et unntak og catch-blokken håndterer det unntaket. Senere utføres finally-blokken etter try-catch-blokken. Videre blir resten av koden også utført normalt.
Til sluttExample.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...'); } }
Produksjon:
Java sluttføre Eksempel
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'); } }
Produksjon: