Fundamentos de Java: --- reflexión y nuevos conceptos

Descripción general: Antes de aprender marco de la primavera, se centró en la comprensión de algunos de inyección de dependencia (es decir: Inversión de Control), el concepto básico aquí es el reflejo del mecanismo, entonces yo golpeo tres aspectos del nuevo concepto hoy peine y la reflexión

 

1, nuevos conocimientos sólo después de que el nuevo nombre de la clase, ya veces no necesitan reflexión

   instancia modo de reflexión de un objeto

    -> conocer la situación del nombre de la clase:

      Clase c1 = <?>  Class.forName ( "cn.classes.OneClass");
      <?> Class = c2 nueva OneClass.getClass () ;
      Clase c3 = <?> OneClass.class () ;

   -> No sé la situación del nombre de la clase: La aplicación proxy dinámico

(

En primer lugar dentro de la JVM para generar objeto proxy archivo de código de bytes a través del método de la función ProxyGenerator.generateProxyClass () (de hecho, no hay ninguna herramienta de
archivo de cuerpo, todo está en la memoria, siendo en la llamada), entonces defineClass0 () la función de uso antes del archivo de código de bytes binarios generados para crear un
objeto de clase de la clase, y por cierto llamado clase de proxy (proxyName se genera el archivo de código de bytes antes de nombrar a su propio), no podemos pasar por este proceso
de llegar a conocer el nombre de la clase del caso clase de objeto de clase, y luego utilizar la reflexión para obtener la instancia del objeto (que implica el proceso de carga de clases de carga,
los detalles específicos, por favor ver la información relevante)

)

2, nuevo fuera del objeto, no podemos pedir a su propiedad privada, puede ser reflejada (por setAccessible () obtener acceso)

3, nueva nueva parte del compilado estáticamente, y refleja parte de la compilación dinámica, estática del compilador en tiempo de compilación que todos los módulos se compilan en exe que vaya, cuando se inicia el exe todos los módulos se cargan entraron. Usted escribe pequeños programas sin problemas, pero el programa de un proceso de carga de gran tamaño (es decir, cuando se ejecuta el proceso de inicialización del programa) es más laborioso. . La mayor parte de configuración de hardware PPC sigue siendo muy general. La compilación dinámica no es lo mismo, al compilar los módulos que no se traducen en que, en circunstancias normales se puede poner esos módulos que se compilan en dll, por lo que se inicia el programa (inicialización) cuando no se ha cargado el módulo, pero en el tiempo de ejecución, utilice el módulo en el que se llama módulo.

 

Supongo que te gusta

Origin www.cnblogs.com/jiazhutao/p/12447385.html
Recomendado
Clasificación