在AS3中书写顶级方法及属性
通常在AS3中会用到一些顶级的方法,他们没有实例化任何对象。如getTimer()、parseFloat( )等等。那么这些方法如何实现的呢?
其实虽然没有使用某个对象来调用,但是他们却引用了某些包。本着执着的精神,于是还是找到了怎么写的法子。
如下一个简单的例子,一个简单的打印语句 只是在其前面加上了前缀
新建一个 as文件 命名为 traceInfo。然后键入下面代码
package { public function traceInfo( value:String ):void{ trace( '--'+value ); } }
同理顶级属性(例如 需要一个游戏版本号,相比而言用静态公共属性与顶级属性的话,顶级的更方便)
package { public const VERSION:String = '1.2.0'; }
或者
package { public function get VERSION():String { return '1.2.0'; } }
注意:将class包含的全部去掉 只留下构造函数,但是去掉class的构造函数就不是构造函数了,变成了普通的函数,所以还得加上返回值 否则有警告(不加也可,强迫症没法,见不得警告)
另外文件名也必须和这个方法名相同不然会出现报错
然后就可以再任何地方使用了。如下图 可以看到 traceInfo 和 trace 都能够在代码提示里面看到