不定项选择题
给出下面的代码片断:
1)public void create(){
2)Vector myVect;
3)myVect=new Vector();
4)}
下面陈述为true(真)的是______。
A.第二行的声明不会为变量myVect分配内存空间
B.第二行的声明分配一个到Vector对象的引用的内存空间
C.第二行语句创建一个Vector类对象
D.第三行语句创建一个Vector类对象
E.第三行语句为一个Vector类对象分配内存空间
【正确答案】
A、D、E
【答案解析】要为一个新对象分配空间必须执行new Xxx()调用,new调用执行以下操作:
(1)为新对象分配空间并将其成员初始化为0或者null。
(2)执行类体中的初始化。(例如在类中有一个成员声明int a=10;在第一步后a=0,执行到第二步后a=10。)
(3)执行构造函数。
(4)变量被分配为一个到内存堆中的新对象的引用。