Java: сколько памяти подразумевает ссылка?

Как говорится в вопросе, сколько памяти используется для ссылки на объект на языке программирования Java?

Пожалуйста, если у вас есть надежный источник лучше.

Большое спасибо!


person santiagobasulto    schedule 17.12.2010    source источник
comment
Дубликат заголовка stackoverflow.com/questions/981073/   -  person khachik    schedule 17.12.2010
comment
@хачик спасибо! Я искал, но не нашел. В любом случае, я думаю, что другие ребята писали об интересных вещах, которых нет в другом вопросе.   -  person santiagobasulto    schedule 17.12.2010


Ответы (1)


Это не указано языком или спецификацией JVM. Однако общепринято, что любая разумная реализация будет занимать 4 байта на 32-битных машинах и от 4 до 8 байтов (в зависимости от настроек сжатого указателя и т. д.) на 64-битных машинах.

person dty    schedule 17.12.2010
comment
Ссылка также подразумевает рефери, объект, на который ссылаются, занимает не менее 16 байтов в Sun Java 6 и имеет размер, кратный 8 байтам. - person Peter Lawrey; 17.12.2010
comment
Да, но две ссылки не означают двух судей ;-) - person aioobe; 17.12.2010
comment
@aioobe, правда, их надо считать отдельно, но в простейших случаях их нет. Пустая ссылка не использует дополнительную память. - person Peter Lawrey; 17.12.2010