as3基础1.doc_第1页
as3基础1.doc_第2页
as3基础1.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Actionscript3.0语言基本元素1.Actionscript3.0的数据类型分类两类:一、 基元数据类型(简单数据类型);二、 复杂数据类型;基元数据类型包括五种:uint:无符号整数类型(非负整数)。int:整数类型Number:符点数(带小数的数字)Boolean:布尔值类型(只有两个值:true(真),false(假)String:字符串类型。复杂数据类型是相对基元数据类型来说的。复杂数据类型可以由基元数据类型构成,比如:由一组数字组成的数组Array;也可以是由复杂类型组成的数据类型,比如:Object类,Array类,Data类,MovieClip类等。2.变量的声明和使用变量本身不是数据,而是一种引用,引用指向我们要操作的数据,对变量操作,引用指向的数据就会发生相应的变化。变量必须先声明后使用,否则flash player编译器会报错,因为我们必须先告诉flash player编译器建立了一个新的类的引用,才能给这个类的引用起个名字,然后才能使用这个引用操作对象。声明变量的格式:关键字+空格+变量名+:+数据类型var i; 声明一个变量i,但没指明数据类型,该变量返回一个默认undefined,它会根据后面给它赋值的类型面确定类型。var i:*声明一个变量i,但没指明数据类型,该变量返回一个默认undefined,它会根据后面给它赋值的类型面确定类型。var a:uint;声明一个uint类型的变量a 但没有赋值 ,该变量返回一个0;var b:int3;声明一个int类型的变量b,并给它赋值为3; var mc:MovieClip=new MovieClip();声明一个MovieClip类型的变量mc,并实例化这个变量。这里不是简单的赋值,而是把引用传给了名为mc的MovieClip类的变量。值得注意的是var 是个声明变量的关键字,如果要给变量赋值,那么值的数据类型要和变量的数据类型一致。代码书写时,每行结束要用分号结束,没有分号flash player编译器也不会报错,但为了规范,最好还是加上。3.变量名的命名规则一、尽量使用有意义的名字。二、变量名使用骆驼式命名法。三、变量名尽量短但描述清晰。四、变量名尽量不出现数字编号。五、常量名用大写字母。六、变量名尽量避免出现actionscript3.0中的保留字符。以上命名规则主要是为了让我们的代码可读性更强。4.变量的本质我们通过变量操作对象,变量持有的是引用,引用指向要操作的对象,实际上我们在actionscript3.0中是通过引用来操作对象的。在flash actionscript3.0殿堂之路中做了如下的比喻:引用好比是一个遥控器,变量是这个遥控器的名字,引用可以直接遥控到要操作的在内存中的对象。所以我们对引用的操作就是对内存中的对象进行操作。例如:var arr:Array=new Array(1,2,3);对这段代码的解释为:这段代码是对一个变量的初始化。首先我们用var 关键字告诉flash player编译器新建了个遥控器,这个遥控器的名字是arr ,这个遥控器的数据类型是数组,也就是说这个遥控器是专门用来操作数组的。此时我们的遥控器还不能工作。接着我们用new 关键字建一个新的对象,这个对象的数据类型是数组,并且数组成员为1,2,3。这一过程也叫实例化过程。最后我们用号,告诉flash player编译器,可以用名为arr的遥控器来操作这个数组的对象了。初始完成。5.值类型和引用类型值类型只有5种基元数据类型。其它的数据类型都属于引用类型。值类型和引用类型最大的区别就是要不要用new关键字来创建。对于必须用new关键字的,就是引用类型。 值类型和引用类型在使用上有什么不同呢?以int类和Array类来说明:值类型的情况var a:int = 2;var b:int = a;b = 9;trace(a);/2trace(b);/9这段代码的意思是:声明一个int类型的变量a,赋值为2,再声明一个int类型的变量b,并把a 的值赋给b,第三句是重新给b赋值,输出a和b,从输出的结果看,a的值并没因为b的值的变化而发生变化。这就产值类型的特点:直接存值。引用类型的情况var a:Array = 1,2,3;var b:Array = a;b0 = 100;trace(a);/100,2,3trace(b);/100,2,3这段代码的意思是:声明数组变量a,赋值1,2,3,声明数组变量b,并把a的引用赋值给b,改变b的数组0号元素为100,输出a和b,我们发现a和b都发生了改变。这是因为引用类型传递的是引用,a只是把引用赋值给了b,a和b持有的引用指向同一个对象1,2,3,所以改变任何一个变量,值都会发生改变。再看一个例子:var a:Array = 1,2,3;var b:Array = a;b = 5,6,7;b0 = 100;trace(a);/1,2,3trace(b);/100,6,7这段代码的意思是:声明数组变量a,赋值1,2,3,声明数组变量b,并把a的引用赋值给b,第三句重新给b赋值5,6,7,也就是说让b的引用指向了5,6,7这个新的对象。所以改变b的0号元素,a的值并没有发生变化。再说值类型:值类型并不持有值,也是持有引用,而值类型是一种特有的对象,叫“不变对象”。例如:var a:int = 5;a = 9;trace(a);/9我们声明一个int类型的变量a,a的引用指向不变对象5,重新给a赋值为9,其实是新创建了不变对象为9,而使a的引用指向这个不变对象9。5被从内存中清除。6、常量的声明常量声明用关键字const。常量一经声明并赋值,如果在后面的调用中试图改变这一值时,flash player编译器就会报错。在代码编写过程中,如果是个不变的量尽量声明成常量。值类型常量持有的就是值。引用类型常量持有的是引用。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论