jed*_*ikb 2 apache-flex actionscript actionscript-3
如果我只有一个对象的实例,我可以调用它的类的静态方法吗?为了好玩,让我说我不知道类的名称是什么,只知道静态方法的名称.
我可以这样做吗?我该怎么做呢?
小智 7
您可以使用Object的构造函数属性来获取对该对象的类对象的引用,然后可以从该类对象中调用静态变量
package{
import flash.display.Sprite;
public class Test extends Sprite{
public function Test(){
var variable : A = new A();
trace((variable as Object).constructor.a());
}
}
}
class A{
static function a() : String{
return "test";
}
}
Run Code Online (Sandbox Code Playgroud)
有一种更简单的方法,但是这假定存在静态函数。
var myclass:Class = getDefinitionByName("MyClass") as Class;
myclass["myStaticMethod"]();
Run Code Online (Sandbox Code Playgroud)
这种语法有效使我感到惊讶。
| 归档时间: |
|
| 查看次数: |
2280 次 |
| 最近记录: |