AjLearning
AjLearning 0.1    





Introducción a Java - Reservando memoria

Curso Introducción a Java

    Anterior     Siguiente

¿Qué sucede durante la creación de un objeto? En el anterior ejemplo vimos de crear un objeto Persona. En la aplicación del operador new pasa lo siguiente:

Primero, se reserva lugar en la memoria para el nuevo objeto:



¿Y cuánto se reserva? El objeto tiene dos campos, nombre y edad. Edad es un entero, y en Java, los enteros ocupan 4 bytes. Eso es parte de lo que se reserva en memoria.

El nombre, en cambio, es una variable, que en algún momento referneciará a un objeto del tipo String. No se reserva lugar para 50 o 60 caracteres. Solamente se reserva lugar para una referencia, un puntero si quieren verlo así. El tamaño de esa referencia es algo interno de la implementación de la máquina virtual, y es opaco para nuestro programa.

Nota para programadores C: Ya no hay operador sizeof en Java, el tamaño de los objetos y las referencias son parte de la implementación de la máquina virtual, y como programadores no tenemos acceso a su detalle, como el tamaño de las estructuras internas que usa.


Programado por Angel J. Lopez www.ajlopez.com