Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.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
Actionscript 3 Actionscript3单例和静态的区别_Actionscript 3_Singleton - Fatal编程技术网

Actionscript 3 Actionscript3单例和静态的区别

Actionscript 3 Actionscript3单例和静态的区别,actionscript-3,singleton,Actionscript 3,Singleton,在AS3中,我看到很多人使用内部类n getInstance创建单例类 我想知道singleton和保持所有公共函数/变量静态的基本区别是什么?主要区别是singleton可以扩展其他类和实现接口,通常可以像“普通”对象实例一样进行传递。当需要在manager类中保留一些数据时,可以使用singleton,通常情况下,静态不需要,就像AS3中的数学函数Singleton一样 可以实现接口。(多态性的力量) 您可以从它继承,也可以从其他类扩展它 可以作为参数传递给其他方法 其方法可以作为参数传递

在AS3中,我看到很多人使用内部类n getInstance创建单例类


我想知道singleton和保持所有公共函数/变量静态的基本区别是什么?

主要区别是singleton可以扩展其他类和实现接口,通常可以像“普通”对象实例一样进行传递。

当需要在manager类中保留一些数据时,可以使用singleton,通常情况下,静态不需要,就像AS3中的数学函数

Singleton一样
  • 可以实现接口。(多态性的力量)

  • 您可以从它继承,也可以从其他类扩展它

  • 可以作为参数传递给其他方法

  • 其方法可以作为参数传递给其他方法。(几乎独一无二

  • 惰性实例化支持*

  • 一个实例,
    这个
    关键字*

AS3中的静态
  • 触手可及

  • 没有实例,没有
    这个
    关键字*



*更新/添加了有意义的注释

此外,单例也可以从延迟实例化中受益,而静态变量则不能。尝试一下+1,但是您缺少了一些重要的东西。对于单例,您只有一个类的实例,而对于static,则没有实例。有了静电,就没有“这个”。