La estructura de objetos que los programadores de Java deben conocer desde la base cero de JVM hasta el combate avanzado

La estructura de objetos que los programadores de Java deben conocer desde la base cero de JVM hasta el combate avanzado

La estructura de objetos que los programadores de Java deben conocer desde la base cero de JVM hasta el combate avanzado



prefacio

La estructura de objetos que los programadores de Java deben conocer desde la base cero de JVM hasta el combate avanzado


Diseño de memoria de objetos JAVA

inserte la descripción de la imagen aquí

  • El encabezado del objeto se utiliza para almacenar la información de metadatos del objeto.
    • La longitud de parte de los datos de Mark Word es de 32 bits y 64 bits respectivamente en máquinas virtuales de 32 y 64 bits (los punteros de compresión no están habilitados) y almacena los datos de tiempo de ejecución del propio objeto, como el valor hash. Mark Word generalmente está diseñado como una estructura de datos no fija para almacenar más información de datos y reutilizar su propio espacio de almacenamiento.
    • El puntero de tipo apunta a su puntero de metadatos de clase, que se utiliza para determinar a qué instancia de clase pertenece el objeto.
  • datos de instancia
    • Los datos de instancia almacenan datos efectivos reales, como el contenido de varios campos. La estrategia de asignación de cada campo es longs/doubles, ints, shorts/chars, bytes/boolean, oops (punteros de objetos ordinarios) y los campos del mismo ancho son siempre asignados Juntos, es conveniente recuperar los datos más tarde. Las variables definidas por la clase principal aparecen antes que las definidas por la subclase.
  • Alinear relleno
    • El relleno de alineación es solo un marcador de posición, no es necesario

Resumir

Este artículo presenta todo el contenido de la estructura del objeto que los programadores de Java deben conocer desde la base cero de JVM hasta el combate real avanzado. Continuaré actualizándolo en el futuro. Si le gusta, haga clic para seguir. La serie JVM continuará estar actualizado.

Supongo que te gusta

Origin blog.csdn.net/weixin_42397937/article/details/131156364
Recomendado
Clasificación