Несколько лет назад Javaworld имел статья об определении размера составного объекта и потенциально вложил объекты Java , они в основном обходят посредством создания sizeof () реализацию в Java. Подход в основном основывается на другой работе, где люди экспериментально определили размер примитивов и типичных объектов Java, и затем примените то знание к методу, который рекурсивно обходит граф объектов для соответствия общему размеру.
Это всегда будет несколько менее точным, чем собственная реализация C просто из-за вещей, продолжающихся негласно класса, но это должен быть хороший индикатор.
, Кроме того, проект SourceForge, соответственно названный sizeof, который предлагает библиотеку Java5 с sizeof () реализация.
P.S. не используют подход сериализации, нет никакой корреляции между размером сериализованного объекта и объемом памяти, который это использует, когда живой.