actionscript 3.0 动态特性 动态获取类、方法、变量
来源:互联网 发布:知乎 孔子姓什么 编辑:程序博客网 时间:2024/06/05 01:20
很多时候,我们知道了知道了一个类、方法(函数)或变量的字符串,如何根据名字获取类实例,调用相应的方法,获取变量值呢?
Convert string to class
获得某个实例对象的类:
实例名["constructor"];
实例名.constructor;
获得某个实例对象的类名:
getQualifiedClassName (对象实例名)
进一步解释如下
getQualifiedClassName (value:*)
参数value手册上说:可以将任何 ActionScript 值传递给此方法,包括所有可用的 ActionScript 类型、对象实例、原始类型(如 uint)和类对象。示例如下:
trace(getQualifiedClassName(“abc”)); //输出 String
trace(getQualifiedClassName(1)); //输出 int
根据类名获得类:
getDefinitionByName(完全限定类名称的字符串表达式);
注意,这里的类名称需要有包路径的限定,如”flash.display.Sprite”,也可以这样写”flash.display::Sprite”,自定义的类也一样,当然如果自定义的类在根包,或是在fla的库里定义的类,或者是ActionScript的原始类型,则可以直接写类名字符串。
用得到的类实例化对象:
一般中间要用一个无类型变量传递类,进行实例化;
如:
var i=0;
var c:*=getDefinitionByName(“MyClass”+i);
var myClass:*=new c();
更多请查看我的另一文章:http://blog.csdn.net/dengxingbo/archive/2010/05/24/5619510.aspx
Convert string to function
先看一示例:
关于Function call和applay的应用请参考:
http://help.adobe.com/zh_CN/AS3LCR/Flash_10.0/Function.html#call()
Convert string to variable
var object:Object = new Object();var movie:MovieClip = new MovieClip();for(var i:int = 1;i<10;i++){ object["x"+i] = movie;}trace(object.x1);trace(object.x2);trace(object.x3);trace(object.x4);trace(object.x5);trace(object.x6);trace(object.x7);trace(object.x8);trace(object.x9); 注意,上面的只是声明了9个movie的引用,并不是生成了9个同样的实例,换句话说,你一旦修改movie的原型,这9个复制品都会有相应的改动。
调用本类的属性,可使用 this[variable_name]
- actionscript 3.0 动态特性 动态获取类、方法、变量
- PHP 动态获取变量,方法和类
- PHP 动态获取变量,方法和类
- Oracle11g新特性之动态变量窥视
- iOS 动态获取类中方法
- Android新特性 - 6.0动态获取权限
- 动态特性
- 动态特性
- 动态特性
- Runtime – 获取成员变量、值、动态创建类
- ActionScript 3.0 变量
- flex (actionscript)用 swf 实现 动态类库(dll)
- 如何动态获取VBA变量动态类型(VBA基础知识)
- 运行时 动态获取成员变量
- Oracle PL/SQL动态获取变量
- 动态获取Rooto的方法
- 动态变量
- Eclipse 3.6M5 发布 新增动态路径变量等特性
- SSH学习---表现层、持久层、业务层(转载)
- [转]汉字编码问题
- 在PSPLink上添加BackTrace的功能
- Android PDF阅读软件横向测试对比
- VC++控件之使用树控件
- actionscript 3.0 动态特性 动态获取类、方法、变量
- MFC子窗口和父窗口(SetParent,SetOwner)
- 线程的第一次接触
- opencv的移植过程笔记
- 强烈推荐:240多个jQuery插件
- 第一财经周刊:走出唐家岭
- 收集一些基于jQuery框架开发的控件-jquery插件
- 通用TitleAreaDialog的实现
- TDD与DBC