¿Por qué se percibe que la reflexión es lenta en Android?

La reflexión es lenta en general en Java y no solo en Android.

Tome este código por ejemplo:

  Reflexión de clase pública {

   public static void main (String [] args) lanza Exception {
     int bucles = 100000;
     inicio largo = System.currentTimeMillis ();
     for (int i = 0; i <bucles; i ++) {
       Reflexión reflexión = nueva reflexión ();
     }
     extremo largo = System.currentTimeMillis ();
     System.out.println (fin - inicio);

     inicio = System.currentTimeMillis ();
     for (int i = 0; i <bucles; i ++) {
       Reflexión reflexión = (Reflexión) Class.forName ("Reflexión"). NewInstance ();
     }
     end = System.currentTimeMillis ();
     System.out.println (fin - inicio);
   }

 }

El primer bucle tarda unos 4 ms y el segundo bucle tarda unos 54 ms. El reflejo utilizado anteriormente es bastante simple, lo haces incluso un poco complicado, las cosas empeorarían y rápidamente.

Para cualquier código de rendimiento, es mejor mantenerse alejado de la reflexión tanto como sea posible. La reflexión debe usarse solo cuando sea realmente necesario.