- 14
- 0
- 约3.7千字
- 约 5页
- 2016-11-28 发布于贵州
- 举报
面向对象程序设计第二分
注:如果你的类里定义了一个或多个构造方法,那么Java 不提供默认的构造方法.
上述例子2 提供了构造方法,下列创建对象是非法的:
p1=new Point();
对象的内存模型
3、对象的内存模型
我们使用前面的例子1来说明对象的内存模型.
(1) 声明对象时的内存模型.
当用XiyoujiRenwu zhubajie类声明一个变量zhubajie,即对象zhubajie时,如例子1中XiyoujiRenwu zhubajie;内存模型如图所示:
声明对象变量zhubajie 后,zhubajie的内存中还没有任何数据,我们称这时zhubajie 是一个空对象,空对象不能使用,因为它还没有得到任何”实体”.必须再进行为对象分配内存的步骤,即为对象分配实体
(2) 对象分配内存后的内存模型
当系统见到zhubajie=new XiyoujiRenwu();时,就会做两件事
(a)为height,weight,head,ear,mouth,hand,foot 各个变量分配内存. 即
XiyoujiRenwu 类的成员变量被分配内存空间.如果成员变量在声明时没有指定初值,那么,对于整型变量,默认初值是0,对于浮点型,默认初值是0.0, 对于booean 型,默认初值是false,对于引用型,默认初值是null.
(b)给出一个信息,已确保这些变量是属于对象zhu
原创力文档

文档评论(0)