OUI, il peut. Voici un exemple où l'final d'améliorer les performances:
La compilation conditionnelle est une technique dans laquelle les lignes de code ne sont pas compilées dans le fichier de classe basée sur une condition particulière. Cela peut être utilisé pour enlever des tonnes de débogage de code dans une production de construire.
considérez les points suivants:
public class ConditionalCompile {
private final static boolean doSomething= false;
if (doSomething) {
// do first part.
}
if (doSomething) {
// do second part.
}
if (doSomething) {
// do third part.
}
if (doSomething) {
// do finalization part.
}
}
Par la conversion de la doSomething attribut un attribut final, vous avez dit que le compilateur chaque fois qu'il voit doSomething, il faut le remplacer avec de fausses selon le moment de la compilation des règles de substitution. La première phase du compilateur change le code à quelque chose comme ceci:
public class ConditionalCompile {
private final static boolean doSomething= false;
if (false){
// do first part.
}
if (false){
// do second part.
}
if (false){
// do third part.
}
if (false){
// do finalization part.
}
}
Une fois cela fait, le compilateur prend un autre regard sur elle et voit qu'il est inatteignable énoncés dans le code. Puisque vous travaillez avec des produits de haute qualité compilateur, il n'est pas comme tous ces inaccessible octets de codes. Donc, elle les enlève, et on se retrouve avec ceci:
public class ConditionalCompile {
private static boolean doSomething= false;
public static void someMethodBetter( ) {
// do first part.
// do second part.
// do third part.
// do finalization part.
}
}
ainsi, en réduisant de façon excessive ou de codes inutiles conditionnelle de la vérification.