当Java对象的所有成员都为null时,它会使用多少内存?

Han*_*etz 13 java memory optimization

假设Java对象只占用对象引用的8个字节是正确的,只要它的所有成员都被设置为null或者成员的定义是否因为某种原因已经占用了实例中的空间?

换句话说,如果我有一大堆我希望节省空间的对象,我可以指望将未使用的成员设置null为减少内存占用吗?

Pet*_*ham 17

不,对于存储在字段中的每个空值,您需要4个或8个字节(取决于它是32位还是64位系统).如果某个地方没有存储的东西告诉它,那么该对象如何知道它的字段为空?


Toa*_*oad 6

不,null也是信息,也必须存储.