作业帮 > 综合 > 作业

我对您给出的理论阐述还是有点模糊,直接举个具体的例子问您吧:

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/14 21:46:07
我对您给出的理论阐述还是有点模糊,直接举个具体的例子问您吧:
AS3.0的XiYi.as文档中定义了一个类XiYi,对应的构造函数为XiYi();
现在新建类的实例:var cloth:XiYi=new XiYi();
new关键词在AS3.0中表示通过构造函数新建了一个实例对象,然后赋值给变量(实例名也是变量),这里赋值的是实例对象的引用,也就是实例对象的地址吗?
通过实例来调用属性nameStr并初始化,语句为cloth.nameStr="Nike".如果cloth代表的是地址,地址通过“.”号来调用属性吗?不应该是具体实例名调用属性吗?
本人对C语言有一定了解,却怎么也理解不了AS中的引用概念,一直困惑,
其实new XIYI()是指示计算机在内存中创建一个对象,赋值的过程是将这个对象的物理地址指向变量cloth,这样,cloth就持有对new XIYI()的引用.
现在回答你第二个问题:
复杂数据类型与简单数据类型的区别是什么呢?复杂数据类型其实是一个复合结构,它在内存中不是简单的单一占位,它是由很多简单的结构以树状结构组合而成,因此类成员在内存中是以分支结构复合的,那么这个地址就代表了整个的复合结构,自然你说的其中的某个属性自然也是这个地址上的一个小分支,复杂数据类型的改变,其实就是这些小分支的改变而已.分支的改变,自然会引起整个复合改变.