`
xo_tobacoo
  • 浏览: 391846 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

fas的静态代码块

阅读更多

简而言之:无论在何时调用一个类时,静态初始化程序总是会优先执行。无论你想对这个类进行什么操作(调用构造函数或是访问一个字段),它总是优先执行。而且他仅仅执行一次。
很久以前,我就发表过使用过静态初始化程序的代码。那些代码效果还不错,但是最新的Flex SDK编译器 不是太喜欢他们。说实话我也不是太喜欢它,因为过去我使用的结构比较臭,而且会出现一些错误。
一个 简单的静态初始化程序如下:

  1. //static (this comment isn't required, but I recommend using one)
  2. {
  3.     trace('woo! static!');
  4. }
复制代码

然而,声明变量或者是使用循环是没有用的。以前循环语句是有用的,但是无论如何用适当的方法器操纵它比较好。你所需要的只是一个能够被直接引用的匿名函数:

  1. //static
  2. {
  3.     (function():void {
  4.         var i:int;
  5.         for (i = 0; i < 3; i++){
  6.             trace(foo + i);
  7.         }
  8.     }());
  9. }
复制代码

一个完整的例子
    就像JS一样,as3有作用范围的。这就意味着在你所定义的函数中的变量只能在函数中使用。所以我们可以使用一些暂时的对象/变量,在完成初始化后它们就会被抛弃。
     它们不会占用内存,也不会扰乱类的命名空间的。
A Complete Example
HelloStatic.as

  1. package {
  2.     import flash.display.*;
  3.     public class HelloStatic extends Sprite {
  4.         //static
  5.         {
  6.             trace('hello');
  7.         }
  8.         public function HelloStatic():void {
  9.             trace('world');
  10.             trace(OtherClass.field);
  11.         }
  12.     }
  13. }
复制代码

OtherClasss.as

  1. package {
  2.     public class OtherClass{
  3.         public static var field:String ='not initialized yet';
  4.         //static
  5.         {
  6.             field = 'initialized';
  7.         }
  8.     }
  9. }
复制代码

输出:

  1. hello
  2. world
  3. initialized
复制代码

一些与JS有关的事
在JS中可以用三种方法能八九不离十地写上面的匿名函数(幸运的是AS3中只能用一种方法来写)。调用括号可以放在花括号的外边。并且花括号可以省略。然而,我这里所用的调用时十分有意义的(这也是JSLint推荐的方式)。
原因很简单。有2个独立的部分。第一个是函数,还有它的调用部分。

  1. function() {
  2.     [...]
  3. }();
复制代码

第二个含有类似标签的括号。

  1. (function() {
  2.     [...]
  3. }());
复制代码

在任何时候直接调用一个函数都应该被包在括号当中,这样就声明了函数从这里执行。根据错误的假设开始读一个函数的代码是十分使人不爽的。如果你平时注意使用括号的话就可以完全避免这样的错误了。庆幸的是as3会逼迫你去这么做。

分享到:
评论

相关推荐

    Umvlx.zip_FAS_FAS反编译_autocad_fas反编译成_vlx 反编译

    而.VLX文件则是.LSP代码经过编译后的二进制格式,用于提高程序的加载速度和安全性,因为它们不会像.FAS文件那样直接显示源代码。然而,有时我们需要查看或修改VLX文件中的源代码,这就需要用到反编译工具。 首先,...

    fas_fas流控_fas一键脚本_fas自启脚本_fas免流脚本_fas搭建脚本_

    总结来说,FAS流控系统是一个强大的网络流量管理工具,fas一键脚本、fas自启脚本、fas免流脚本以及fas搭建脚本则围绕FAS系统提供便捷的部署和管理方案。`fas.sh`作为这些功能的载体,是实现这些自动化过程的关键文件...

    Fas2Lisp反编译.zip

    反编译 fas 文件到 Lisp 源码可以帮助开发者理解代码逻辑,进行代码分析,或者在没有源码的情况下进行调试和修改。 描述中提到了两个主要的工具:"Fas2Lisp.exe" 和 "Vlx拆分fas.exe"。前者是核心的反编译工具,它...

    FAS文件资源解密器v0.9.5.rar_FAS lisp_occurrl9_providedcn_vlx、fas反编译_vlx

    【FAS-DeCrypt.exe】很可能是这个工具包的核心,它被设计用来解密和反编译FAS文件,以便用户可以看到原始的Lisp代码。 VLX文件是另一种与AutoLISP相关的文件类型,它们是可加载的AutoLISP库。VLX文件可以包含多个...

    fas2lsp.rar

    这可能是为了从损坏的fas文件中恢复数据,或者是为了提取fas文件中的几何信息并将其转化为可执行的LISP代码。这种转换过程可能涉及到解析fas文件的内部结构,提取必要的几何信息,并将其转换为LISP表达式。 在实际...

    FAS2600_Series_FAS2650.zip

    《NETAPP FAS2650存储系统:深入解析与维护指南》 NETAPP FAS2650是一款企业级的存储系统,以其高效的数据管理、灵活的扩展性和卓越的性能在IT领域中广受赞誉。本文将围绕FAS2650系列设备,结合提供的压缩包文件...

    手工反编译一个fas小程序实验.rar_LSP_fas小程序_fas程序破解_lsp编译软件_反编译

    fas反编译研究,fas格式研究,反编译lsp。

    fas2lsp反编译工具包new.zip

    fas2lsp反编译工具包是一个专门设计用于将fas文件转换为lsp源代码的实用程序。在软件开发和逆向工程领域,这样的工具对于理解已编译代码的内部工作原理,进行代码分析和调试至关重要。fas文件是高级语言(如Lisp或...

    FAS8300 and FAS8700 - Installation and setup.pdf

    《FAS8300与FAS8700系统安装与设置》 NetApp的FAS8300和FAS8700是企业级的存储解决方案,旨在提供高性能、高可用性和灵活的数据管理服务。这份文档详细介绍了这两款设备的安装和配置过程,以确保用户能够正确无误地...

    NetApp FAS8200部署手册.docx

    NetApp FAS8200 部署手册 NetApp FAS8200 是一种高性能的存储系统,旨在满足企业级的存储需求。本部署手册将指导您从硬件到软件部署 NetApp FAS8200,以实现基本配置。 硬件安装 在部署 NetApp FAS8200 之前,...

    Fas文件逆向反编译Lsp工具(不支持vlx).rar

    标题中的"Fas文件逆向反编译Lsp工具(不支持vlx).rar"表明这是一个专门用于处理FAS文件的工具,能够将其反编译为LSP源代码。FAS和LSP是两种不同的编程语言或编译结果格式,它们在IT领域中具有特定的应用场景和用途。 ...

    主机FAS模块屏幕学习

    根据提供的文件信息,本文将详细解析“主机FAS模块屏幕学习”中的关键知识点,并结合描述“FAS介绍”以及部分文件内容,深入解读FAS系统的更新内容及其在金融交易处理中的应用。 ### 一、FAS系统简介 FAS ...

    NetApp FAS8200硬件更换维护手册

    NetApp FAS8200是一款高性能的企业级存储系统,为关键业务应用提供高可用性和数据保护。在日常运维中,可能需要对某些硬件组件进行更换或维护,以确保系统的稳定运行。本手册涵盖的主题包括控制器、内存、电源、风扇...

    Netapp FAS2000 PDF

    ### NetApp FAS2000 系列产品概述及关键技术知识点 #### 一、NetApp FAS2000 系列简介 NetApp FAS2000 系列是一款面向中型企业和大型企业的远程办公室或分支机构设计的数据存储解决方案。该系列包括 FAS2240 和 FAS...

    NATAPP FAS3140基础文档

    **NATAPP FAS3140存储配置详解** NATAPP FAS3140是一款高性能、高可用性的企业级存储系统,专为满足现代数据中心的存储需求而设计。这款设备提供了强大的数据管理和保护功能,是中小型企业及大型企业环境的理想选择...

    地铁FAS系统综述.ppt

    **地铁FAS系统综述** **一、FAS系统概述** FAS,即火灾自动报警系统,是地铁安全运行的重要组成部分。系统采用分层、分布式结构设计,主要由监控管理层和现场设备层构成。监控管理层包括火灾报警控制器、气体消防...

    netapp fas8200

    NetApp FAS8200是一款由NetApp公司推出的高端存储阵列,主要用于企业级环境,支持大规模的数据存储和处理任务。该产品线自推出以来,就以其出色的性能、可靠性和易用性深受业界好评,是NetApp产品中非常经典且重要的...

    FAS8300 and FAS8700 - Replacing a fan.pdf

    在本文中,我们将详细讨论如何在FAS8300和FAS8700存储系统中更换风扇模块,这是确保设备正常运行和避免过热的关键维护任务。这两个型号的系统都依赖于风扇来维持适当的散热,以保证控制器模块的稳定工作。 **一、...

    FAS8300 and FAS8700 - Replacing the boot media.pdf

    《FAS8300与FAS8700系统:更换引导媒体》 在复杂的IT环境中,存储系统的稳定性和可靠性至关重要。NetApp的FAS8300和FAS8700是企业级存储解决方案,它们为大规模的数据管理和业务连续性提供了强大的支持。然而,当...

Global site tag (gtag.js) - Google Analytics