Unterschied zwischen final, final und finalize

final, final und finalize sind Schlüsselwörter in Java, die bei der Behandlung von Ausnahmen verwendet werden. Jedes dieser Schlüsselwörter hat eine andere Funktionalität. Der grundlegende Unterschied zwischen final, final und finalize besteht darin, dass final ein Zugriffsmodifizierer ist, final der Block in der Ausnahmebehandlung und finalize die Methode der Objektklasse ist.

Außerdem gibt es viele Unterschiede zwischen final, final und finalize. Nachfolgend finden Sie eine Liste der Unterschiede zwischen final, final und finalize:

Sr.-Nr.TasteFinaleendlichabschließen
1.Definitionfinal ist das Schlüsselwort und der Zugriffsmodifikator, der verwendet wird, um Beschränkungen auf eine Klasse, Methode oder Variable anzuwenden.final ist der Block in der Java-Ausnahmebehandlung, um den wichtigen Code auszuführen, unabhängig davon, ob die Ausnahme auftritt oder nicht.finalize ist die Methode in Java, die verwendet wird, um eine Bereinigungsverarbeitung durchzuführen, kurz bevor das Objekt der Garbage Collection unterzogen wird.
2.Anwendbar aufDas Schlüsselwort final wird mit den Klassen, Methoden und Variablen verwendet.Der Final-Block bezieht sich immer auf den Try-and-Catch-Block in der Ausnahmebehandlung.finalize() Methode wird mit den Objekten verwendet.
3.Funktionalität(1) Nach der Deklaration wird die Endvariable konstant und kann nicht geändert werden.
(2) final-Methode kann nicht von der Unterklasse überschrieben werden.
(3) Endklasse kann nicht vererbt werden.
(1) Schließlich führt der Block den wichtigen Code aus, selbst wenn eine Ausnahme auftritt oder nicht.
(2) finally block bereinigt alle Ressourcen, die im try-Block verwendet werden
finalize-Methode führt die Reinigungsaktivitäten in Bezug auf das Objekt vor seiner Zerstörung durch.
4.Die AusführungDie letzte Methode wird nur ausgeführt, wenn wir sie aufrufen.Der Final-Block wird ausgeführt, sobald der Try-Catch-Block ausgeführt wird.Seine Ausführung ist nicht von der Ausnahme abhängig.finalize-Methode wird ausgeführt, kurz bevor das Objekt zerstört wird.

Letztes Java-Beispiel

Betrachten wir das folgende Beispiel, in dem wir das letzte variable Alter deklarieren. Einmal deklariert, kann es nicht mehr geändert werden.

FinalExampleTest.java

  1. öffentliche Klasse  FinalExampleTest {   
  2.     // Endvariable deklarieren  
  3.     endgültiges Int  -Alter =  18 ;   
  4.     ungültige  Anzeige () {  
  5.       
  6.     // Wert der Altersvariable neu zuweisen   
  7.     // gibt Kompilierzeitfehler  
  8.     Alter =  55 ;  
  9.     }  
  10.       
  11.     public static void  main(String[] args) {    
  12.       
  13.     FinalExampleTest obj =  new  FinalExampleTest();  
  14.     // gibt Kompilierzeitfehler  
  15.     obj.display();  
  16.     }  
  17. }  

Ausgabe:

Unterschied zwischen final, final und finalize

Im obigen Beispiel haben wir eine Variable final deklariert. Auf ähnliche Weise können wir die Methoden und Klassen mit dem Schlüsselwort final deklarieren.

Java endlich Beispiel

Sehen wir uns das folgende Beispiel an, in dem der Java-Code eine Ausnahme auslöst und der catch-Block diese Ausnahme behandelt. Später wird der finally-Block nach dem try-catch-Block ausgeführt. Außerdem wird der Rest des Codes ebenfalls normal ausgeführt.

EndlichExample.java

  1. öffentliche Klasse  EndlichBeispiel {     
  2.       public static void  main(String args[]){     
  3.       versuche  {    
  4.         System.out.println( “Innerhalb des Try-Blocks” );  
  5.       // Der folgende Code löst die Ausnahme Division by Zero aus  
  6.        int  daten = 25 / 0 ;    
  7.        System.out.println (Daten);    
  8.       }   
  9.       // behandelt die Arithmetic Exception / Divide by zero Ausnahme  
  10.       catch  (ArithmeticException e){  
  11.         System.out.println( “Ausnahme behandelt” );  
  12.         System.out.println(e);  
  13.       }   
  14.       // wird unabhängig davon ausgeführt, ob eine Ausnahme aufgetreten ist oder nicht   
  15.       endlich  {  
  16.         System.out.println( “schließlich Block wird immer ausgeführt” );  
  17.       }    
  18.       System.out.println( “Rest des Codes…” );    
  19.       }    
  20.     }    

Ausgabe:

Unterschied zwischen final, final und finalize

Java-Finalisierungsbeispiel

FinalizeExample.java

  1. öffentliche Klasse  FinalizeExample {     
  2.      public static void  main(String[] args)       
  3.     {     
  4.         FinalizeExample obj =  new  FinalizeExample();        
  5.         // Drucken des Hashcodes   
  6.         System.out.println( “Hashcode ist: ”  + obj.hashCode());           
  7.         obj =  null ;    
  8.         // Garbage Collector mit gc() aufrufen   
  9.         System.gc();     
  10.         System.out.println( “Ende der Garbage Collection” );     
  11.     }     
  12.    // Finalize-Methode definieren   
  13.     geschützt void  finalize()      
  14.     {     
  15.         System.out.println( “Die Methode finalize() aufgerufen” );     
  16.     }     
  17. }    

Ausgabe:

Unterschied zwischen final, final und finalize

osky