【发布时间】:2014-10-07 08:20:59
【问题描述】:
class A // Normal Class
{
static int i; // Static int variable
int j; // Normal int variable
}
假设我创建了两个对象,即A1、A2。
两个对象是否为变量i 或公共永久空间分配了单独的内存
A1、A2 的大小是多少?如果假设int的大小假设为2字节。
【问题讨论】:
-
它是静态的。它与类的实例无关。
-
每个实例的大小是多少?如果 int 的大小假定为 2 个字节
-
为什么假设 int 的大小为 2 个字节?
int属性至少占用 4 个字节,由于内存对齐问题,可能占用 8 个字节。 Java 对象也有很大的内存开销,new Object()在 64 位 HotSpot 上需要 24 个字节。
标签: java memory-management static