我刚从编程开始,我对计算机知之甚少,比如内存,cpus内部的东西。
好吧我知道的基础知识!
在java文档中:
我的课程:
public classFoo{
int a;
int b;
long c;
long d;
}
此代码在内存中分配256位还是需要更多?
方法消耗内存?
如果我有10个Foo对象,它们将在内存中消耗2560个字节?
对于字符串和布尔值,如何管理内存呢?
在对象的内存中还有哪些其他因素会产生影响?
答案 0 :(得分:0)
这不是关于有多少个对象,而是实际创建的对象大小。
您为Java程序或JVM
分配了一些内存,它利用该内存并分配对象。
很少有物体可能需要很少的记忆,而很少有物体需要更多的记忆。
这取决于服务器机器到机器,分配给JVM的空间等等。
此外,它取决于 GC
,每当内存消耗量很高时,JVM
运行GC
并释放内存。
一个完整的内存耗尽,JVM抱怨并抛出OutOfMemoryError
一个简单的Java程序可能会抛出OOM错误
public static void main(String[] args) {
long[] l = new long[Integer.MAX_VALUE];
}
<强>输出强>
Exception in thread "main" java.lang.OutOfMemoryError: Requested array size exceeds VM limit
这个概念很大,但你完全是错误的方向。
答案 1 :(得分:0)
这取决于你正在创建的对象的大小。根据用户或程序员分配的内存,JVM使用该内存来分配对象。 Java