Red de conocimiento informático - Aprendizaje de código fuente - Explicar el principio de carga de archivos de clase JVM

Explicar el principio de carga de archivos de clase JVM

El lenguaje Java es un lenguaje interpretado dinámico y las clases solo se pueden ejecutar después de cargarse en la JVM. Al ejecutar el programa especificado, la JVM cargará el archivo .class compilado en la memoria de acuerdo con las necesidades y ciertas reglas, y lo organizará en una aplicación Java completa. Este proceso de carga lo realiza el cargador de clases, específicamente ClassLoader y sus subclases. El cargador de clases en sí es una clase y esencialmente lee el archivo de clase del disco duro a la memoria.

Hay dos formas de cargar clases: implícita y explícita. La carga implícita significa que cuando un programa usa métodos como new para crear un objeto, se llama implícitamente al cargador de clases para cargar la clase correspondiente en la JVM. La carga explícita significa cargar la clase requerida en la JVM llamando directamente al método class.forName().

Cualquier proyecto se compone de muchas clases. Cuando se inicia el programa, solo las clases que deben cargarse se cargarán en la JVM, y otras clases solo se cargarán cuando se usen. El uso de este método puede acelerar la carga, por un lado, y, por el otro, ahorrar sobrecarga de memoria durante la ejecución del programa. Además, en el lenguaje Java, cada clase o interfaz corresponde a un archivo .class. Estos archivos pueden considerarse como una unidad que se puede cargar dinámicamente. Por lo tanto, cuando solo se modifican algunas clases, solo es necesario volver a compilar las clases modificadas. Se puede utilizar sin volver a compilar todos los archivos, lo que acelera la compilación.