在C& c ++中,静态变量在编译期间自己分配内存。所以我想知道变量的内存分配何时在Java中进行?
答案 0 :(得分:0)
Java源文件被编译为.class
个文件。并且.class
文件与从C / C ++编译的二进制文件无法真正比较。所以你的问题真的没有意义我害怕。
在加载类时,很可能会分配用于保存Java中静态变量值的内存(但这是我假设的VM实现)。
但是为了直接回答你的问题,我会说不,在编译Java程序时没有为静态变量分配内存。
答案 1 :(得分:0)
静态变量(类变量)的内存在类加载到JVM期间分配 在创建新对象时分配对象变量的内存(这是java中new关键字的责任)。