Differenza chiave – finale vs finale vs finalizzazione in Java
finale, finalizzare e finalizzare sono termini comuni usati nella programmazione Java. Il finale è una parola chiave. Può essere utilizzato per variabili, metodi o classi. Le variabili dichiarate come finali devono essere inizializzate una sola volta. Non possono essere cambiati. Poiché Java è un linguaggio che supporta la programmazione orientata agli oggetti, consente di creare classi da classi esistenti per migliorare la riutilizzabilità del codice. A volte, potrebbe essere necessario evitare di utilizzare le classi esistenti. Per questo, è possibile utilizzare finale. Nella programmazione possono esserci errori ed è importante gestirli per eseguire correttamente il programma. Finalize è un metodo chiamato dal Garbage Collector. Quindi tutti questi termini hanno significati diversi di conseguenza. La finale è una parola chiave che impedisce la modifica delle variabili, evita l'override del metodo ed evita di estendere le classi. Infine è un blocco nella gestione delle eccezioni, che verrà eseguito indipendentemente dal fatto che un'eccezione venga generata o meno. Il finalize è un metodo, chiamato dal Garbage Collector prima che distrugga completamente l'oggetto. Questa è la differenza chiave finale e finalizzata in Java.
Che cos'è la finale in Java?
La finale è una parola chiave in Java. Poiché Java supporta la programmazione Object Oriented, le sottoclassi possono utilizzare le variabili ei metodi di una classe già esistente. La classe già esistente è la superclasse mentre la nuova classe è la sottoclasse. Se il programmatore vuole impedire la variabile accessibile da altre classi, può dichiarare la variabile come 'finale'. Ad esempio, supponiamo che esista una variabile come p. Viene dichiarato finale e inizializzato il valore 10.per esempio. final int p=10. Se il valore p viene nuovamente modificato in 20, si verificherà un errore in fase di compilazione. La parola chiave finale impedisce di modificare il valore della variabile.
Una classe può utilizzare un metodo che è già in una classe esistente. Supponiamo che esista una classe chiamata B che abbia un metodo display(). La nuova classe è C ed estende la classe B. Se anche la classe C ha un metodo chiamato display(), il metodo display() della classe B originale viene sovrascritto. Se il programmatore vuole evitare che il metodo venga sovrascritto, può finalmente utilizzare la parola chiave. per esempio. display vuoto finale(){ }. Rendere definitivo un metodo garantisce che la funzionalità del metodo non venga mai modificata.
Figura 01: finale, finalmente e finalizzare
È anche possibile utilizzare la parola chiave finale per una classe. La nuova classe non può ereditare variabili e metodi di una classe finale. Questo è utile per aumentare la sicurezza. Poiché la classe non può essere utilizzata dalle sottoclassi, i dati sono protetti.
Cosa c'è finalmente in Java?
Nella programmazione possono esserci degli errori. Gli errori possono causare output errati o interrompere l'esecuzione di un programma. È importante utilizzare un qualche tipo di meccanismo per prevenire questi risultati imprevisti. Gli errori possono essere di due tipi. Sono errori di compilazione ed errori di runtime. Si verificano errori di tempo di compilazione a causa di errori sintattici. Alcuni errori comuni in fase di compilazione mancano il punto e virgola, parentesi graffe mancanti, identificatori di ortografia errati, parole chiave e variabili non dichiarate. Il compilatore non creerà il file.class finché questi errori non saranno corretti.
A volte possono esserci programmi che vengono compilati correttamente ma danno un output sbagliato. Sono chiamati errori di runtime. Alcuni errori di runtime comuni sono l'immersione di un intero di zero e l'accesso a un elemento che è fuori dai limiti di un array. Questi errori non causeranno un errore in fase di compilazione, ma l'output non è corretto. Un'eccezione è una condizione causata da un errore di runtime nel programma.
Quando si verifica un errore di runtime, Java crea un oggetto eccezione e lo lancia. Se l'oggetto eccezione non viene catturato correttamente, visualizzerà un messaggio di errore e terminerà il programma. Se il programmatore vuole continuare l'esecuzione del programma con il resto del codice, dovrebbe catturare l'oggetto eccezione e visualizzare il messaggio necessario per l'azione correttiva. Questo processo è noto come gestione delle eccezioni.
In Java, try viene utilizzato per il codice che potrebbe causare un errore e generare un'eccezione. Il catch viene utilizzato per gestire l'eccezione generata dal blocco try. Possono esserci più istruzioni catch. Le istruzioni finally possono essere utilizzate per gestire un'eccezione che non viene rilevata da nessuna delle precedenti istruzioni catch. Il blocco finally verrà eseguito indipendentemente dal fatto che venga generata o meno un'eccezione. Fare riferimento all'esempio fornito.
int p=10, q=5, r=5;
int risposta;
prova{
risposta=p / (q – r);
}
catch (ArithmeticException e){
System.out.println("Diviso per zero");
}
finalmente{
System.out.println("Il blocco viene eseguito");
}
Secondo l'esempio sopra, il valore p è diviso per zero e causerà un'eccezione. Pertanto, viene catturato dall'istruzione catch. Stamperà il messaggio, Diviso per zero. Il blocco finally verrà eseguito indipendentemente dal fatto che si sia verificata o meno un'eccezione. Dopo il messaggio Diviso per zero, verrà visualizzato il messaggio all'interno del blocco definitivo. Pertanto, finalmente è un blocco utilizzato nella gestione delle eccezioni.
Cos'è finalize in Java?
In OOP, gli oggetti vengono creati utilizzando le classi. Il metodo del costruttore può inizializzare un oggetto quando viene dichiarato. Il processo è noto come inizializzazione. Java ha anche un concetto chiamato finalizzazione. Il runtime Java è un Garbage Collector automatico. Libera automaticamente le risorse di memoria utilizzate dagli oggetti. Il Garbage Collector chiama questo metodo prima di distruggere l'oggetto.
Alcuni oggetti potrebbero contenere risorse non di oggetti. Un esempio è un descrittore di file. In queste situazioni, il Garbage Collector chiama il metodo finalize. per esempio. finalizzare(). Questo metodo esegue l'elaborazione della pulizia appena prima che l'oggetto venga raccolto.
Qual è la somiglianza tra final e finalize in Java?
Tutti i finali, i finali e i finali in Java sono usati nella programmazione Java
Qual è la differenza tra final e finalize in Java?
finale vs finale vs finalizzazione |
|
finale | La final è una parola chiave in Java che impedisce la modifica delle variabili, l'override del metodo ed evita l'estensione delle classi. |
finalmente | finalmente è un blocco nella gestione delle eccezioni Java, che verrà eseguito indipendentemente dal fatto che un'eccezione venga generata o meno. |
finalizzare | Il finalize è un metodo in Java, chiamato dal Garbage Collector prima che distrugga completamente l'oggetto. |
Applicabilità | |
finale | Il finale è applicabile a variabili, metodi e classi. |
finalmente | Il final è applicabile con i blocchi try and catch. |
finalizzare | La finalizzazione è applicabile agli oggetti. |
Riepilogo – finale vs final vs finalize in Java
finale, finalizzata e finalizzata sono termini comuni usati nella programmazione Java. Le loro parole sembrano le stesse, ma hanno una differenza. La finale è una parola chiave che impedisce la modifica delle variabili, l'override del metodo e l'estensione delle classi. Infine è un blocco nella gestione delle eccezioni, che verrà eseguito indipendentemente dal fatto che un'eccezione venga generata o meno. Il finalize è un metodo, chiamato dal Garbage Collector prima che distrugga completamente l'oggetto. Questa è la differenza tra final, final e finalize nella programmazione Java.
Scarica il PDF di final vs final vs finalize in Java
Puoi scaricare la versione PDF di questo articolo e usarla per scopi offline come da nota di citazione. Scarica la versione PDF qui: Differenza tra finale e finalizzazione in Java