Unterschied zwischen final final und finalize in Java

Inhaltsverzeichnis:

Unterschied zwischen final final und finalize in Java
Unterschied zwischen final final und finalize in Java

Video: Unterschied zwischen final final und finalize in Java

Video: Unterschied zwischen final final und finalize in Java
Video: difference between final finally and finalize in java| java interview questions | wikitechy.com 2024, Juli
Anonim

Hauptunterschied – Final vs. Final vs. Finalize in Java

The final, final und finalize sind gebräuchliche Begriffe, die in der Java-Programmierung verwendet werden. Das Finale ist ein Schlüsselwort. Es kann für Variablen, Methoden oder Klassen verwendet werden. Die als final deklarierten Variablen sollten nur einmal initialisiert werden. Sie können nicht geändert werden. Da Java eine Sprache ist, die die objektorientierte Programmierung unterstützt, ermöglicht sie das Erstellen von Klassen aus vorhandenen Klassen, um die Wiederverwendbarkeit von Code zu verbessern. Manchmal kann es notwendig sein, die Verwendung der vorhandenen Klassen zu vermeiden. Dafür kann final verwendet werden. Beim Programmieren können Fehler auftreten, und es ist wichtig, sie zu behandeln, um das Programm ordnungsgemäß auszuführen. Finalize ist eine Methode, die vom Garbage Collector aufgerufen wird. Alle diese Begriffe haben also entsprechend unterschiedliche Bedeutungen. Das Finale ist ein Schlüsselwort, das das Ändern von Variablen, das Überschreiben von Methoden und das Erweitern von Klassen verhindert. Das finally ist ein Block in der Ausnahmebehandlung, der ausgeführt wird, unabhängig davon, ob eine Ausnahme ausgelöst wird oder nicht. Finalize ist eine Methode, die vom Garbage Collector aufgerufen wird, bevor er das Objekt vollständig zerstört. Das ist der Hauptunterschied final final und finalize in Java.

Was ist final in Java?

Das Finale ist ein Schlüsselwort in Java. Da Java die objektorientierte Programmierung unterstützt, können die Unterklassen die Variablen und Methoden einer bereits existierenden Klasse verwenden. Die bereits vorhandene Klasse ist die Oberklasse, während die neue Klasse die Unterklasse ist. Wenn der Programmierer verhindern möchte, dass andere Klassen auf die Variable zugreifen können, kann er die Variable als „final“deklarieren. Angenommen, es gibt eine Variable wie p. Es wird als final deklariert und mit dem Wert 10 initialisiert.z. B. final int p=10. Wenn der p-Wert erneut auf 20 geändert wird, führt dies zu einem Kompilierungsfehler. Das Schlüsselwort final verhindert, dass der Wert der Variablen geändert wird.

Eine Klasse kann eine Methode verwenden, die bereits in einer bestehenden Klasse vorhanden ist. Angenommen, es gibt eine Klasse namens B, die eine Methode display() hat. Die neue Klasse ist C und erweitert Klasse B. Wenn Klasse C auch eine Methode namens display() hat, wird die ursprüngliche display()-Methode der Klasse B überschrieben. Wenn der Programmierer vermeiden möchte, dass Methode überschrieben wird, kann er das Schlüsselwort final verwenden. z. B. final void display(){ }. Das Finalisieren einer Methode stellt sicher, dass die Funktionalität der Methode niemals geändert wird.

Unterschied zwischen final final und finalize in Java
Unterschied zwischen final final und finalize in Java

Abbildung 01: final, final und finalize

Es ist auch möglich, das Schlüsselwort final für eine Klasse zu verwenden. Die neue Klasse kann keine Variablen und Methoden einer endgültigen Klasse erben. Dies ist nützlich, um die Sicherheit zu erhöhen. Da die Klasse von den Unterklassen an der Verwendung gehindert wird, sind die Daten geschützt.

Was ist endlich in Java?

Bei der Programmierung können Fehler auftreten. Fehler können falsche Ausgaben verursachen oder die Ausführung eines Programms beenden. Es ist wichtig, einen Mechanismus zu verwenden, um diese unerwarteten Ergebnisse zu verhindern. Es gibt zwei Arten von Fehlern. Sie sind kompilierte Zeitfehler und Laufzeitfehler. Kompilierzeitfehler treten aufgrund syntaktischer Fehler auf. Bei einigen häufigen Kompilierungsfehlern fehlt das Semikolon, fehlende geschweifte Klammern, falsch geschriebene Bezeichner, Schlüsselwörter und nicht deklarierte Variablen. Der Compiler erstellt die.class-Datei erst, wenn diese Fehler behoben sind.

Manchmal kann es Programme geben, die richtig kompilieren, aber eine falsche Ausgabe liefern. Sie werden Laufzeitfehler genannt. Einige häufige Laufzeitfehler tauchen eine Ganzzahl durch Null und greifen auf ein Element zu, das außerhalb der Grenzen eines Arrays liegt. Diese Fehler verursachen zur Kompilierzeit keinen Fehler, aber die Ausgabe ist falsch. Eine Ausnahme ist eine Bedingung, die durch einen Laufzeitfehler im Programm verursacht wird.

Wenn es einen Laufzeitfehler gibt, erstellt Java ein Ausnahmeobjekt und wirft es. Wenn das Ausnahmeobjekt nicht richtig abgefangen wird, zeigt es eine Fehlermeldung an und beendet das Programm. Wenn der Programmierer die Ausführung des Programms mit dem Rest des Codes fortsetzen möchte, sollte er das Ausnahmeobjekt abfangen und die notwendige Meldung für eine Korrekturmaßnahme anzeigen. Dieser Vorgang wird als Ausnahmebehandlung bezeichnet.

In Java wird try für den Code verwendet, der wahrscheinlich einen Fehler verursacht und eine Ausnahme auslöst. Der catch wird verwendet, um die vom try-Block ausgelöste Ausnahme zu behandeln. Es können mehrere catch-Anweisungen vorhanden sein. Die finally-Anweisungen können verwendet werden, um eine Ausnahme zu behandeln, die von keiner der vorherigen catch-Anweisungen abgefangen wird. Der finally-Block wird unabhängig davon ausgeführt, ob eine Ausnahme ausgelöst wird oder nicht. Siehe das angegebene Beispiel.

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

int Antwort;

versuchen{

Antwort=p / (q – r);

}

catch (ArithmeticException e){

System.out.println(“Dividiert durch Null”);

}

endlich{

System.out.println(“Der finally-Block wird ausgeführt”);

}

Gemäß obigem Beispiel wird der Wert p durch Null dividiert, was zu einer Ausnahme führt. Daher wird es von der catch-Anweisung abgefangen. Es wird die Nachricht Geteilt durch Null gedruckt. Der finally-Block wird unabhängig davon ausgeführt, ob eine Ausnahme aufgetreten ist oder nicht. Nach der Meldung Geteilt durch Null wird die Meldung im Endgültig-Block angezeigt. Daher ist finally ein Block, der in der Ausnahmebehandlung verwendet wird.

Was ist Finalize in Java?

In OOP werden Objekte mit Hilfe von Klassen erstellt. Die Konstruktormethode kann ein Objekt initialisieren, wenn es deklariert wird. Der Vorgang wird als Initialisierung bezeichnet. Java hat auch ein Konzept namens Finalisierung. Die Java-Laufzeit ist ein automatischer Garbage Collector. Es gibt automatisch die von den Objekten verwendeten Speicherressourcen frei. Der Garbage Collector ruft diese Methode auf, bevor er das Objekt zerstört.

Einige Objekte enth alten möglicherweise Nicht-Objekt-Ressourcen. Ein Beispiel ist ein Dateideskriptor. In diesen Situationen ruft der Garbage Collector die Finalize-Methode auf. z. B. finalisieren(). Diese Methode führt eine Bereinigungsverarbeitung durch, kurz bevor das Objekt der Garbage Collection unterzogen wird.

Was ist die Ähnlichkeit zwischen final final und finalize in Java?

All final, final und finalize in Java werden in der Java-Programmierung verwendet

Was ist der Unterschied zwischen final final und finalize in Java?

final vs final vs finalize

finale Das Finale ist ein Schlüsselwort in Java, das das Ändern von Variablen, das Überschreiben von Methoden und das Erweitern von Klassen verhindert.
endlich The finally ist ein Block in der Java-Ausnahmebehandlung, der ausgeführt wird, ob eine Ausnahme ausgelöst wird oder nicht.
abschließen Finalize ist eine Methode in Java, die vom Garbage Collector aufgerufen wird, bevor er das Objekt vollständig zerstört.
Anwendbarkeit
finale Das Finale gilt für Variablen, Methoden und Klassen.
endlich Das Final ist anwendbar mit Try-and-Catch-Blöcken.
abschließen Das Finalisieren gilt für Objekte.

Zusammenfassung – final vs final vs finalize in Java

The final, final und finalize sind gebräuchliche Begriffe, die in der Java-Programmierung verwendet werden. Ihre Worte scheinen gleich zu sein, aber sie haben einen Unterschied. Das Finale ist ein Schlüsselwort, das das Ändern von Variablen, das Überschreiben von Methoden und das Erweitern von Klassen verhindert. Das finally ist ein Block in der Ausnahmebehandlung, der ausgeführt wird, unabhängig davon, ob eine Ausnahme ausgelöst wird oder nicht. Finalize ist eine Methode, die vom Garbage Collector aufgerufen wird, bevor er das Objekt vollständig zerstört. Das ist der Unterschied zwischen final, final und finalize in der Java-Programmierung.

Laden Sie das PDF von Final vs Final vs Finalize in Java herunter

Sie können die PDF-Version dieses Artikels herunterladen und gemäß Zitationshinweis für Offline-Zwecke verwenden. Bitte laden Sie die PDF-Version hier herunter: Unterschied zwischen final final und finalize in Java

Empfohlen: