记得以前看到过一种说法,在构造函数中不要写复杂的内容,要不然会影响代码执行的效率,因为构造函数每次都会解析执行。
然而如果认真看过这个ppt的都会发现,以上所说的观点是不成立的。
代码执行的两种方式,分别是interpret,我的理解就是每次都会翻译执行。还有一种就是JIT,第一次会翻译执行,当以后再次执行这段代码的时候就调用以前翻译的结果,所以效率会比较高。
那么在as中,哪些不会在JIT中执行呢。flash会有一个初始化的过程,首先是全局$init,这里会初始化一个as文件为单位中的类,这里并不是实例。然后是$cinit,这里会初始化类中所有的静态方法,属性等。最后结束全局的$init。
下面才是真正进入JIT的时候,那也就是说在构造函数中执行代码的效率和普通的函数是一样快的。
然而如果认真看过这个ppt的都会发现,以上所说的观点是不成立的。
代码执行的两种方式,分别是interpret,我的理解就是每次都会翻译执行。还有一种就是JIT,第一次会翻译执行,当以后再次执行这段代码的时候就调用以前翻译的结果,所以效率会比较高。
那么在as中,哪些不会在JIT中执行呢。flash会有一个初始化的过程,首先是全局$init,这里会初始化一个as文件为单位中的类,这里并不是实例。然后是$cinit,这里会初始化类中所有的静态方法,属性等。最后结束全局的$init。
下面才是真正进入JIT的时候,那也就是说在构造函数中执行代码的效率和普通的函数是一样快的。