首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

AS3 快速入门篇-<3>施用ActionScript 创建对象实例小结

2012-07-04 
AS3 快速入门篇------3使用ActionScript 创建对象实例小结AS3 快速入门篇------使用ActionScript 创建对

AS3 快速入门篇------<3>使用ActionScript 创建对象实例小结

AS3 快速入门篇------使用ActionScript 创建对象实例小结
2010年01月22日
  使用ActionScript 创建对象实例小结
  基本实例创建
  然而,您不会总是希望直观地创建对象。还可以通过几种方法来仅使用ActionScript 创建对象
  实例。首先,借助几个ActionScript 数据类型,可以使用文本表达式(直接写入ActionScript 代
  码的值)创建一个实例。下面给出了一些示例:
  &#1048698; 文本数字值(直接输入数字):
  var someNumber:Number = 17.239;
  var someNegativeInteger:int = -53;
  var someUint:uint = 22;
  &#1048698; 文本字符串值(用双引号将本文引起来):
  var firstName:String = "George";
  var soliloquy:String = "To be or not to be, that is the question...";
  &#1048698; 文本布尔值(使用字面值true 或false):
  var niceWeather:Boolean = true;
  var playingOutside:Boolean = false;
  &#1048698; 文本数组值(在方括号中包含以逗号分隔的值列表):
  var seasons:Array = ["spring", "summer", "autumn", "winter"];
  &#1048698; 文本XML 值(直接输入XML):
  var employee:XML =
  Harold
  Webster
  ;
  &#1048698; 数组
  var myArr1:Array=new Array();//索引数组,空数组没有元素
  var myArr2:Array=new Array(5);//索引数组包含5 个元素,但尚未赋值
  var myArr3:Array=["one","two","three","four","five"];//索引数组,包含5 个有实际内容
  trace(myArr3);//one,two,three,four,five
  //字符串键关联数组
  var monitorInfo:Array = new Array(); //要先创建构造函数
  monitorInfo["type"] = "Flat Panel";
  monitorInfo["resolution"] = "1600 x 1200";
  trace(monitorInfo["type"], monitorInfo["resolution"]); // output: Flat Panel 1600 x 1200
  &#1048698; Dictionary
  创建具有对象键的关联数组(词典)
  import flash.display.Sprite;
  import flash.utils.Dictionary;
  var groupMap:Dictionary = new Dictionary();
  // objects to use as keys
  var spr1:Sprite = new Sprite();
  var spr2:Sprite = new Sprite();
  var spr3:Sprite = new Sprite();
  // objects to use as values
  var groupA:Object = new Object();
  var groupB:Object = new Object();
  // Create new key-value pairs in dictionary.
  groupMap[spr1] = groupA; //具有对象键的关联数组
  groupMap[spr2] = groupB;
  groupMap[spr3] = groupB;
  if (groupMap[spr1] == groupA)
  {
  trace("spr1 is in groupA");
  }
  if (groupMap[spr2] == groupB)
  {
  trace("spr2 is in groupB");
  }
  if (groupMap[spr3] == groupB)
  {
  trace("spr3 is in groupB");
  }
  &#1048698; 正则表达式
  var pattern1:RegExp = /bob/i;
  var pattern2:RegExp = new RegExp("bob", "i");
  &#1048698; Object 数据类型
  Var myObj1:Object=new Object();
  Var myObj2:Object={myHeight:172,myAge:22,myName:"小乐"};
  myObj1.msg="个人信息";
  trace(myObj2.myAge);
  &#1048698; 对于其它任何数据类型而言,要创建一个对象实例,应将new 运算符与类名一起使用,如
  下所示:
  var raceCar:MovieClip = new MovieClip();
  var birthday:Date = new Date(2006, 7, 9);
  &#1048698; Flash 中,new 运算符还可用于创建已在库中定义、但没有放在舞台上的影片剪辑元件的
  实例
  反射类名动态创建实例
  flash.utils 包中的公共方法
  getDefinitionByName(name:String):Object
  返回name 参数指定的类的类名引用。
  如下片段代码所示
  function playSnd(n:uint)
  {
  var sndName:Class=getDefinitionByName("wav"+sndArr[n]) as Class;
  var snd:Sound=new sndName();
  var sndChannel:SoundChannel=snd.play();
  }

热点排行