Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex 使用getDefinitionByName获取类(单例)的静态实例_Apache Flex_Actionscript 3_Oop_Singleton - Fatal编程技术网

Apache flex 使用getDefinitionByName获取类(单例)的静态实例

Apache flex 使用getDefinitionByName获取类(单例)的静态实例,apache-flex,actionscript-3,oop,singleton,Apache Flex,Actionscript 3,Oop,Singleton,我有一个ManagerClass,里面有一个单例实现,我通过调用ManagerClass.getInstance()来获取实例 我可以通过将类名作为字符串来获得相同的实例吗? 我试过这样的方法: var theInstance:* = getDefinitionByName("ManagerClass").getInstance as Class; theInstance.doTrace(); // I get a 1009 error here 确定为什么不创建一个单例管理器(类似于Flex

我有一个
ManagerClass
,里面有一个单例实现,我通过调用
ManagerClass.getInstance()
来获取实例

我可以通过将类名作为字符串来获得相同的实例吗? 我试过这样的方法:

var theInstance:* = getDefinitionByName("ManagerClass").getInstance as Class;
theInstance.doTrace(); // I get a 1009 error here

确定为什么不创建一个单例管理器(类似于Flex-core mx.core.Singleton类)来注册这些类,并在它们为null时处理它们

与此类似:


嗯-我在处理单例,因为我正在处理的应用程序是用cairngorm编写的,其中有很多东西必须是单例。 至于为什么我需要“传递类名”而不是硬编码它们——正是因为这个原因——我不想硬编码任何东西。该应用程序已经开发了5年,现在不是将其切换到机器人腿等的好时机


哈哈-是的,你是对的-我忘记了getInstance后面的()了。一定是睡眠不足。。。现在它工作了

我不知道为什么你们每个人都想这样做。将getInstance()与单例一起使用是很自然的事情,这样设置是有原因的。你有什么理由想带着这个走出禁区吗?为什么不按常规方式执行呢?因为我需要引用多个单例,并且需要能够传入类名,而不是硬编码。您是否忘记了getInstance()中的括号()?等等,什么?你需要“传递类名”而不是硬编码?您正在创建动态单例吗?我认为你在试图找到一个不存在的问题的解决方案。你这么做想解决什么问题?重点是什么?还应该提到的是,在Flex应用程序中使用单例模式是不可取的。您确实缺少了一个n(),应该删除类
@为什么单身汉会皱眉?