In questo articolo parleremo delle funzioni dichiarate come final.
Il vantaggio di dichiarare una funzione final è che non sarà possibile ridefinire quella funzione se viene ereditata. Proprio
per questo motivo non è possibile definire una funzione sia come final che come abstract.
Ecco un esempio che dimostra quanto detto:
class ExampleFinal {
public static void main(String args[]) {
//altro codice...
}
final void stamp(String a) {
System.out.println(a);
}
}
class ExampleDerived extends ExampleFinal {
// void stamp(String a) {
// provare a togliere il commento e a compilare. Si riceverà un errore di compilazione.
// }
}
Come si è visto, se una funzione è dichiarata come final, qualunque classe erediti quella funzione non può comunque
ridefinirla.
Questo può essere utile quando si deve essere sicuri che una funzione faccia sempre la stessa cosa.
Funzioni final
Pubblicato prima del 07/05/2008 - Informazione assente
Analista e Programmatore in C/C++ ANSI, Java, J2ME (per dispositivi mobili), C#.NET, Visual Basic.NET, Assembler x86.
Sviluppatore siti Web in Html, CSS, PHP, SQL(in particolare MySQL), JavaScript e JSP.
Basi di Ingegneria del Software, sicurezza in java, funzionamento e implementazione di Web Services, UML e XML.
Conosco le librerie OpenGL per la programmazione di videogiochi in C++.
Esperto di Espressioni Regolari.
|
Aggiungi un commento