请问静态变量声明时未被赋值会被分配空间吗? public class test { static a[] aa; public test(){} }这个动态数组编译后会被分配空间吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 未直接或间接用 new XXX()德都不会分配空间,基础类除外 楼上好像说错了,使用new xxx(),是在堆内存中给对象的成员变量赋初值的,不过这个对象因为没有被其他变量引用,会交给gc处理 fantacyland(fantacyland) ( ) 信誉:94 2006-04-21 09:46:00 得分: 0 那么此时aa是以什么形态存在的呢? ---------------------------------------------------------------------------此时aa只是Stack上的一个变量声明而已,null值的引用被默认地赋给了它。除此之外,没有任何别的东西被创建。 如果是 public class test {static int a[10];public test(){}}是不是声明时就已经分配空间了?还有Strng aa="123";引用指向堆还是栈的“123”? java中的数组是作为对象来处理的如果是 public class test {static int a[10];public test(){}}这里a是一个数组对象,没有被初始化,所以还是没分配空间Strng aa="123";123存在常量池中 楼上正解Strng aa="123";应该是在栈里的常量池里要是new的就在堆里了 怎么教科书的不能实验 static变量 java 启动可视化的界面,用的jar文件怎么加入到启动参数中?? 求助一个线程的问题 请帮我翻译! 编码转换 有关DES加密的问题。 关于corba的送分题 用JavaMail发带附件的mail 为什么jdbc的游标溢出? 换皮肤!!! 想请教一下构造器为私有的情况下的一个问题。
那么此时aa是以什么形态存在的呢?
---------------------------------------------------------------------------
此时aa只是Stack上的一个变量声明而已,null值的引用被默认地赋给了它。除此之外,没有任何别的东西被创建。
public class test {
static int a[10];
public test(){}
}
是不是声明时就已经分配空间了?
还有Strng aa="123";
引用指向堆还是栈的“123”?
如果是
public class test {
static int a[10];
public test(){}
}
这里a是一个数组对象,没有被初始化,所以还是没分配空间
Strng aa="123";
123存在常量池中
Strng aa="123";
应该是在栈里的常量池里
要是new的就在堆里了