AS3.0本来是动态语言!
AS2.0和AS3.0的编译时检查
首先定义一个空的类。
class Foo { }
再调用一个未定义的函数。
var foo:Foo = new Foo();
foo.nonExistingMethod(); // 未定义的函数的调用
编译时,AS2.0会弹出错误,但AS3.0不会(在非strict模式下)。这个结果就说明了AS3.0的编译时检查要松一些。
AS2.0和AS3.0的运行时检查
AS2.0在运行时不会弹出错误,弹出了也捕获不到(比如递归时堆栈溢出,代码超时等)。虽然有 Error 类,但没有任何系统类使用。并且有一些Bug。
AS3.0在运行时会进行类型等检查,终于像其他的动态语言一样了。
![[Google]](http://www.google.com/logos/Logo_25wht.gif)
![[Synchronous Space]](http://weihe924stephen.googlepages.com/syncspace-banner.jpg)
![[Creative Commons License]](http://i.creativecommons.org/l/by-nc-sa/3.0/88x31.png)
![[Add to Google]](http://buttons.googlesyndication.com/fusion/add.gif)
![[Aggregated by MXNA]](http://weblogs.macromedia.com/mxna/images/mxna88x31.gif)
![[Flex.org]](http://www.flex.org/images/flexorg.gif)
![Validate my Atom 1.0 feed [Valid Atom 1.0]](http://validator.w3.org/feed/images/valid-atom.png)
![Validate my RSS feed [Valid RSS]](http://resource.googlecode.com/files/valid-rss.png)
![[I heart FeedBurner]](http://www.feedburner.com/fb/images/pub/i_heart_fb.gif)
没有评论:
发表评论