我想使用静态分析来防止“TypeError:错误#1009:无法访问空对象引用的属性或方法”。
据我所知,有一个使用@NotNull/@Nullable 的Java 静态分析器。程序员通过为每个成员/函数/参数指定这些注释来明确表达他的意图,以便工具可以验证一切是否正确,并且每个 @Nullable -> @NotNull 转换都是通过检查是否为空来进行的。对我来说,只指定@Nullable 会更舒服,这样其他所有东西都可以像@NotNull 一样对待,但这不是必需的。
我想知道 Actionscript 3 是否有这种免费工具?
我有 FlashBuilder 4.5 许可证,但除此之外我不想购买任何其他东西。我听说 IntelliJ IDEA 可能有这样的东西,但它只适用于终极版中的 Actionscript,它不是免费的 :(
所以问题是:
- Actionscript 3 有这样的静态分析器吗?
- 如果不免费的话要多少钱?
- 除了“检查所有内容并将代码转换成一团糟”之外,是否还有其他解决方案可以防止 1009 错误。
更新
没有给出完整的答案:(但weltraumpirat的答案是迄今为止最好的。我考虑对可空函数使用命名约定:Try*、Find*、*OrNull、*IfAny 等。名称变得更长,但可靠性更重要. 谢谢weltraumpirat!赏金是你的,但我不会将答案标记为“已接受”,因为它不完整,我希望在某个时候有人会回答所需静态分析器的链接:)