flex程序执行顺序实例
核心说明:
1、 查看一个flex系统程序的执行顺序: 1.全局变量区域; 2.外部自定义组件区域; 3.四大关键字(preinitialize/initialize/creationComplete/applicationComplete)。
2、 定义了一个类引用:此as类里不执行任何操作。
定义了一个类实例:此as类里先执行全部全局变量区域,再执行构造函数,(最后执行可能调用的此as类里的函数)。
1、 sortLoader.mxml
<?xml version="1.0" encoding="utf-8"?><!--1、 查看一个flex系统程序的执行顺序: 1.全局变量区域; 2.外部自定义组件区域; 3.四大关键字(preinitialize/initialize/creationComplete/applicationComplete)。2、 定义了一个类引用:此as类里不执行任何操作。 定义了一个类实例:此as类里先执行全部全局变量区域,再执行构造函数,(最后执行可能调用的此as类里的函数)。--><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:ssComp="*" minWidth="955" minHeight="600" applicationComplete="initApp();"><fx:Script><![CDATA[private function initApp():void{new SelfComp();//new ForeignAS().foreignTest();}]]></fx:Script><!--<ssComp:SelfComp id="ssID"/>--></s:Application>
<?xml version="1.0" encoding="utf-8"?><s:Group xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" width="400" height="300" preinitialize="preInit();" initialize="iniInit();" creationComplete="creInit();"><s:layout><s:BasicLayout/></s:layout><fx:Script><![CDATA[private var foreignAS2:ForeignAS2 = new ForeignAS2();private function preInit():void{ trace("=======src.SelfComp[preInit]=======");}private function iniInit():void{ trace("=======src.SelfComp[iniInit]=======");}private function creInit():void{ trace("=======src.SelfComp[creInit]=======");}]]></fx:Script><s:Panel id="panID" width="200" height="100" backgroundColor="RED"/></s:Group>
package{public class ForeignAS{private var foreignAS2:ForeignAS2 = new ForeignAS2();private var foreignHello:String = "你好世界杯111";public function ForeignAS(){trace("=======src.ForeignAS[ForeignAS]=======");}public function foreignTest():void{trace("=======" + foreignHello + "=======");}}}
package{public class ForeignAS2{public function ForeignAS2(){trace("=======src.ForeignAS2[ForeignAS2]=======");}}}