在Java中,定义一个数组是为引用还是为对象本身分配空间?

4
在下面的代码行中,编译器是否分配内存来存储10个MyClass对象或10个引用?
MyClass[] arr= new MyClass[10];

换句话说,数组仅存储引用还是对象本身?对于原始类型,行为是否不同?
2个回答

5

它为引用分配空间。对于原始类型,它分配的空间=数组长度*原始类型字节大小。


5

当以这种方式创建时,数组会自动用其类型的默认值进行初始化,因此arr会被初始化为10个null引用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接