博客公告(点击显示/隐藏)| 今日心情:神学
2010-07-30 21:09:43
小S吧今天你来了吗?更新速度:每周2-3篇以上!在俺博客看到有用的东西,学习了之后,记得回访带点人气哦 ^_^ 嘿嘿!
欢迎跟俺交换友情链接啊。。留言,直接QQ等联系我都行啊
转载本博客文章请注明:来源小S吧——sunbright博客,链接地址:http://www.xiaos8.com
2007
12-23
运行时可能发生以下错误。在 ActionScript 3.0 中,无论是在严谨模式下还是在警告模式下编译,都将进行运行时类型检查。 代码 消息 说明
1000 系统内存不足。 系统可用内存无法满足 Flash Player 编译代码的需要。请关闭系统上正在运行的某些应用程序或进程。
1001 未实现方法 _。
1002 Number.toPrecision 的范围是 1 至 21。Number.toFixed 和 Number.toExponential 的范围是 0 至 20。指定的值不在期望范围之内。 指定的值不在 precision 参数的期望范围之内。Number.toPrecision 的范围是 1 至 21。Number.toFixed 和 Number.toExponential 的范围是 0 至 20。
1003 radix 参数必须介于 2 至 36 之间;得到 _。 为方法或属性的 radix 参数传递的值小于 2 或大于 36。请传递一个介于 2 至 36 之间的值作为 radix 参数。
1004 对不兼容的对象调用方法 _。 尝试调用的方法不适用于指定对象。如果已将原型函数从一个对象复制到另一个对象然后又调用此函数,但目标对象类型与原始对象类型不同,则会发生此错误。请确保目标对象与原始对象的类型相同。有关详细信息,请参阅 ECMAScript Language Specification(《ECMAScript 语言规范》)第 3 版中的第 15 章。
1005 数组索引不是正整数 (_)。 尝试使用非正整数的索引值访问数组成员。仅传递正整数作为数组的索引值。
1006 _ 不是函数。 尝试调用不存在的函数时,发生此错误。请确保正在调用正确的函数且自 ActionScript 2.0 以来此 API 尚未发生更改。此外,请确保正在使用正确的对象。例如,使用以下代码时,将出现此错误(由于最后一行错误调用了变量 big 而未调用变量 blg):
var blg:String = "foo";
var big:Sprite = new Sprite();
var error:int = big.length();
1007 尝试对非构造函数进行实例化。
1008 _ 指代不明确;发现多个匹配的绑定。
1009 无法访问空对象引用的属性或方法。 计算结果为 null 的对象可以不包含任何属性。在某些意外(尽管有效)的情况下,可能发生此错误。以创建 Sprite 对象的以下代码为例。由于从未将此 Sprite 对象添加到显示列表中(使用 DisplayObjectContainer 对象的 addChild() 方法),因此其 stage 属性设置为 null。在这种情况下,此示例将生成此错误,这是因为 Sprite 对象的 stage 属性不能拥有任何属性:
import flash.display.Sprite;
var sprite1:Sprite = new Sprite();
var q:String = sprite1.stage.quality;
1010 术语未经定义且没有属性。 如果尝试访问并不存在的对象的属性,将发生此错误。例如:
var obj:Object = new Object();
obj.a = "foo";
trace(obj.b.prop);由于拼写错误也可能产生此错误,在下面的示例中,mc 表示显示列表中的 MovieClip 对象,stage 属性中的小写字母 s 被错误地拼写为大写字母 S(应该为 stage):trace(mc.Stage.quality);
1011 方法 _ 在偏移 _ 处包含非法的 opcode _。 请参见此表底部的注意。*
1012 最后一条指令超过了代码大小。 请参见此表底部的注意。*
1013 scopeDepth 为 0 时,无法调用 OP_findproperty。 请参见此表底部的注意。*
1014 无法找到 _ 类。
1015 方法 _ 无法设置默认的 xml 命名空间 请参见此表底部的注意。*
1016 类型 _ 不支持后代运算符 (..)。
1017 发生作用域堆栈上溢。 请参见此表底部的注意。*
1018 发生作用域堆栈下溢。 请参见此表底部的注意。*
1019 Getscopeobject _ 超出范围。 请参见此表底部的注意。*
1020 代码无法脱离某个方法的结尾。 请参见此表底部的注意。*
1021 方法中至少有一个分支目标未在有效指令中。 请参见此表底部的注意。*
1022 void 类型只能用作函数返回类型。 请参见此表底部的注意。*
1023 发生堆栈上溢。 请参见此表底部的注意。*
1024 发生堆栈下溢。 请参见此表底部的注意。*
1025 访问了无效的寄存器 _。 请参见此表底部的注意。*
1026 插槽 _ 超出 _ 的 slotCount=_。 请参见此表底部的注意。*
1027 Method_info _ 超出 method_count=_。 请参见此表底部的注意。*
1028 Disp_id _ 超过 _ 的 max_disp_id=_。 请参见此表底部的注意。*
1029 未在 _ 中定义 Disp_id _。 请参见此表底部的注意。*
1030 堆栈深度不平衡。 _ != _. 请参见此表底部的注意。*
1031 作用域深度不平衡。 _ != _. 请参见此表底部的注意。*
1032 Cpool 索引 _ 超出范围 _。 请参见此表底部的注意。*
1033 Cpool 条目 _ 类型错误。 请参见此表底部的注意。*
1034 类型强制失败:无法将 _ 转换为 _。
1035 方法 _ 中存在非法的超级表达式。 请参见此表底部的注意。*
1037 无法分配到 _ 上的方法 _。 请参见此表底部的注意。*
1038 已定义 _。 在同一作用域内,不能多次声明具有同一标识符名称的变量或函数。在 ActionScript 3.0 中,不同的代码块(如用于同一 function 定义中的两个 for 循环中的代码块)将被视为在同一作用域内。请参见此表底部的注意。*
1039 引用方法后才可以对其进行验证。 请参见此表底部的注意。*
1040 instanceof 的右侧必须为类或函数。 instanceof 运算符右侧的表达式必须为类或函数。
1041 运算符的右侧必须为类。 is 运算符右侧的表达式必须为类。
1042 不是 ABC 文件。major_version=_ minor_version=_。 使用播放器尝试播放的文件无效:用于生成此 SWF 的工具可能已过期,或此 SWF 本身可能已损坏。
1043 code_length=_ 无效。 请参见此表底部的注意。*
1044 MethodInfo-_ 不支持 flags=_。 请参见此表底部的注意。*
1045 不支持 traits kind=_。 请参见此表底部的注意。*
1046 定义前引用 MethodInfo-_。 请参见此表底部的注意。*
1047 未找到入口点。 请参见此表底部的注意。*
1049 原型对象必须为 vanilla 对象。 请参见此表底部的注意。*
1050 无法将 _ 转换为原始类型。 请参见此表底部的注意。*
1051 非法早期绑定访问 _。 请参见此表底部的注意。*
1052 传递给 _ 函数的 URI 无效。 请参见此表底部的注意。*
1053 在 _ 中非法覆盖 _。 请参见此表底部的注意。*
1054 异常处理函数中的非法范围或目标偏移。 请参见此表底部的注意。*
1056 无法在 _ 上创建属性 _。 正在尝试为非动态类实例中不存在的属性赋值。此操作仅适用于动态类的实例。
1057 _ 中只能包含方法。 请参见此表底部的注意。*
1058 非法操作数类型:_ 必须为 _。 请参见此表底部的注意。*
1059 定义前引用 ClassInfo-_。 请参见此表底部的注意。*
1060 ClassInfo _ 超过 class_count=_。 请参见此表底部的注意。*
1061 将值 _ 转换为 _ 时会损失精度。 如果尝试将小数赋给数据类型为 int 的属性,将出现此错误。
如果赋值超出范围,也会出现此错误,如下所示:var m0:int = 2147483648; // int.MAX_VALUE == 2147483647使用按位向左移位运算符 (<<) 时,也会出现此错误。例如,请考虑以下代码:var m0:uint = 0xFF;
var m1:uint = m0<<24;向左移位运算符 (<<) 的结果解释为 32 位带符号的 2 的补码数。在本示例中,结果为负值,将此结果赋予 uint 类型的属性时,将发生错误。解决方法如下所示:var m0:uint = 0xFF;
var m1:uint = uint(m0<<24);
1063 _ 中的参数数量不匹配。预期为 _,实际得到 _。
1064 无法将方法 _ 作为构造函数调用。 将提取的方法永久地绑定到提取这些方法的对象中。因此,以后不能将这些方法作为构造函数进行调用。例如,下面的代码将在类 A 中创建函数 f():
class A {
function f() {}
}在以下代码中,提取此函数将不会产生错误。但创建此函数的新实例将产生错误。
var a = new A()
var m = a.f // extract f, don't call it
m() // same as a.f()
new m() // causes this error
1065 未定义变量 _。 您所使用的词汇引用未定义。例如,在以下语句中,由于未定义 x,trace(x) 语句将生成错误。但是,由于定义了 y,因此 trace(y) 语句不会生成错误:
trace("hello world")
trace(x) // x is undefined
var y
trace(y) // No error, y is defined.
1066 不支持表单函数(“函数体”)。 与 JavaScript 不同,Flash 不使用 eval() 和 function() 动态编译代码。因此,在 ActionScript 3.0 中将其作为构造函数进行调用将生成此错误。
1067 本机方法 _ 中包含非法的方法体。 请参见此表底部的注意。*
1068 无法协调 _ 和 _。 请参见此表底部的注意。*
1069 属性 _ 在 _ 上找不到,没有默认值。 在非动态类实例中引用了未定义的属性。例如,当以下代码引用未定义且不能动态创建的 x 属性时,将生成此错误:
class A {} // sealed class, not dynamic
trace(new A().x) // no property x defined on A, and A is not dynamic
1070 未在 _ 上找到方法 _。 正在使用 super 语句调用函数,但超类中不存在该函数。例如,以下代码将生成此错误:
class A() {}
class B extends A {
function f() { trace(super.f()); } // error 1070, there is no f on A
}
1071 已将函数 _ 绑定到 _。
1072 Disp_id 0 是非法的。 请参见此表底部的注意。*
1073 由于出现重复的 disp_id _,因此已替换非覆盖方法 _。 请参见此表底部的注意。*
1074 在 _ 上非法写入只读属性 _。
1075 Math 不是函数。 正在尝试将 math() 作为函数进行调用,但 Math 是具有静态方法的类。
1076 Math 不是构造函数。 无法实例化 Math 类。
1077 在 _ 上非法读取只写属性 _。
1078 非法的 opcode/multiname 组合:_<_>。 请参见此表底部的注意。*
1079 不允许在加载代码中使用本机方法。 请参见此表底部的注意。*
1080 命名空间的值是非法的。 请参见此表底部的注意。*
1081 属性 _ 在 _ 上找不到,没有默认值。
1082 尚未设置默认的命名空间。 请参见此表底部的注意。*
1083 未绑定元素“_”的前缀“_”。 属性名称或元素名称具有前缀,但未找到匹配的命名空间。由于没有与 foo:x 匹配的 foo 命名空间,因此此语句生成错误:
<foo:x xmlns:clowns='http://circuscenter.org'>
1084 元素或属性 ("_") 与 QName 生成不匹配:QName::=(NCName':')?NCName。 将 foo: 或 :foo 用作元素或属性名称,但是冒号的另一侧没有内容。
1085 必须由相匹配的结束标签“</_>”终止元素类型“_”。
1086 方法 _ 仅作用于包含一个项的列表 如果 XMLList 类的列表中仅包含一个项,则此类将特定于 XML 的函数传播到它的一个子类。如果此列表中包含多个项,则例程会因此错误而失败。以下模拟 XML 函数的 XMLList 函数会发生此错误:
addNamespace、appendChild、childIndex、inScopeNamespaces、insertChildAfter、insertChildBefore, name、namespace、localName、namespaceDeclarations、nodeKind、prependChild、removeNamespace、replace、setChildren、setLocalName、setName 和 setNamespace。
1087 禁止为已建立索引的 XML 赋值。
1088 文档中根元素后面的标记的格式必须正确。 下面为可能产生此错误的原因:
将 XMLList 样式对象作为 XML 进行分析
字符串未均衡
1089 不支持向包含多个项的列表赋值。
1090 XML 分析器失败:元素格式不正确。 元素名称格式不正确。此示例中的元素名称格式不正确,因为结尾处的右尖括号 > 丢失:
<a/><b></b
1091 XML 分析器失败:CDATA 部分未结束。
1092 XML 分析器失败:XML 声明未结束。
1093 XML 分析器失败:DOCTYPE 声明未结束。
1094 XML 分析器失败:注释未结束。
1095 XML 分析器失败:属性未结束。
1096 XML 分析器失败:元素未结束。
1097 XML 分析器失败:指令处理未结束。
1098 用于无命名空间的前缀 _ 非法。 如果尝试传入具有非空前缀的空 URI,此命名空间构造函数将引发此错误,如本例所示:
ns = new Namespace ("prefix", "");
1100 从一个 RegExp 构造另一个 RegExp 时,无法提供标志。 由现有的正则表达式创建新的正则表达式时,也会复制现有表达式的标志。如要创建具有不同标志的正则表达式,请使用 new 运算符并按照需要设置标志。例如,此语句创建正则表达式并指定标志设置:
var re:RegExp = new RegExp("ali", /s)此语句也可以创建与 re 具有相同标志的正则表达式:
var re2:RegExp = new RegExp(re, ...)
1101 无法验证具有未知作用域的方法 _。 请参见此表底部的注意。*
1102 类型 _ 的默认值是非法的。 请参见此表底部的注意。*
1103 _ 类不能扩展最终基类。 请参见此表底部的注意。*
1104 已为元素“_”指定属性“_”。
1107 ABC 数据已损坏,系统尝试读取范围以外的数据。 请参见此表底部的注意。*
1108 OP_newclass opcode 用于错误的基类。 请参见此表底部的注意。*
1109 尝试从方法 _ 中直接调用未限定范围的函数 _。 请参见此表底部的注意。*
1110 _ 不能扩展 _。 请参见此表底部的注意。*
1111 _ 不能实现 _。 请参见此表底部的注意。*
1112 类强制中的参数数量不匹配。预期为 1,实际得到 _。
1113 OP_newactivation 用于没有 NEED_ACTIVATION 标志的方法中。 请参见此表底部的注意。*
1114 OP_getglobalslot 或 OP_setglobalslot 未用于全局作用域。 请参见此表底部的注意。*
1115 _ 不是构造函数。
1116 Function.prototype.apply 的第二个参数必须为数组。
1117 XML 名称无效:_。
1118 节点之间的循环体是非法的。
1119 类型 _ 的操作数不支持删除运算符。
1120 无法在 _ 上删除属性 _。
1121 方法 _ 存在重复的方法体。
1122 接口方法 _ 包含非法的方法体。
1123 类型 _ 不支持过滤运算符。
1124 OP_hasnext2 要求对象和索引使用不同的寄存器。
1502 脚本的执行时间大于 15 秒的默认超时期间。 超时期间过后执行脚本。(默认超时期间为 15 秒。)发生此错误后,脚本可以继续执行 15 秒,然后将终止脚本并引发编号为 1503 的运行时错误(脚本在 30 秒内未能退出,终止其执行)。
1503 30 秒后脚本未能退出,终止执行。 30 秒后仍然继续执行此脚本。如果此脚本的执行时间超过 15 秒(即默认的超时期间),Flash Player 将首先引发编号为 1502 的运行时错误(脚本的执行时间超过 15 秒的默认超时期间)。错误 1502 发生 15 秒后,发生此错误。
1507 参数 _ 不能为 null。
1508 为参数 _ 指定的值无效。 您可能正在尝试传递错误的数据类型。例如,代码
public function doSomething(const:int):void {
}
this ["doSomething"] ("str")在运行时将生成错误,原因是将 doSomething 转换为 int 数据类型。
1510 当回调参数为某个类的方法时,此可选参数必须为 null。
2000 没有活动的安全上下文。
2001 指定的参数太少;实际得到 _,预期为 _。
2002 尝试对无效的套接字进行操作。
2003 指定的套接字端口号无效。 有效范围介于 0 到 65535 之间。有关详细信息,请参阅本语言参考中的“套接字连接”。
2004 其中一个参数无效。
2005 参数 _ 的类型错误。应为类型 _。
2006 提供的索引超出范围。
2007 参数 _ 必须为非空值。
2008 参数 _ 必须为可接受值之一。
2009 此方法不能用于具有样式表的文本字段。
2010 不允许只能与本地文件系统的内容交互的 SWF 文件使用套接字。
2011 到 _:_ 的套接字连接失败。 存在网络问题。可能是由于未解析 DNS 名称或未连接 TCP 套接字。
2012 无法实例化 _ 类。
2013 仅可用于 Flash 创作的功能。
2014 此时不可用的功能。 本系统不支持此功能。
2015 BitmapData 无效。
2017 只有受信任的本地文件可能会导致 Flash Player 退出。
2018 System.exit 仅在独立的 Flash Player 中可用。
2019 指定的深度无效。
2020 无法交换具有不同父级的 MovieClips 对象。
2021 对象创建失败。
2022 必须从 DisplayObject 继承 _ 类以链接到元件。
2023 必须从 Sprite 继承 _ 类以链接到根。
2024 无法将对象作为其自身的子级进行添加。
2025 所提供的 DisplayObject 必须为调用方的子级。
2026 导航至 URL _ 时发生错误。 可能的原因是此 URL 不存在、网络连接有问题或者 URL 在安全沙箱之外。
2027 参数 _ 必须是非负数;得到 _。
2028 只能与本地文件系统的内容交互的 SWF 文件 _ 无法访问 Internet URL _。
2029 此 URLStream 对象没有已打开的流。
2030 到达文件末尾。
2031 套接字错误。 发生套接字错误。有关详细信息,请参阅本语言参考中的“套接字连接”。
2032 流错误。
2033 键生成失败。
2035 没有找到 URL。
2036 加载从未完成。
2037 函数的调用顺序不正确,或者之前的调用未成功。
2038 文件 I/O 错误。
2039 远程 URL 协议无效。远程 URL 协议必须是 HTTP 或 HTTPS。
2041 一次只能执行一个文件浏览会话。
2044 未处理 _:。
2047 安全沙箱侵犯:_:_ 无法访问 _。
2048 安全沙箱侵犯:_ 无法从 _ 加载数据。
2049 安全沙箱侵犯:_ 无法将数据上载至 _。
2051 安全沙箱侵犯:_ 无法在 _ 中计算脚本 URL(allowScriptAccess 为 _)。尝试的 URL 是 _。
2052 仅允许对 allowDomain 和 allowInsecureDomain 使用 String 参数。
2053 安全沙箱侵犯:_ 无法清除由 _ 设置的间隔计时器。
2054 使用过的 Security.exactSettings 的值无法进行更改。
2055 无法启动打印作业。
2056 无法将打印作业发送到打印机。
2057 无法将页面添加至打印作业中。 未正确使用 addPage() 方法。请参阅此语言参考中的 addPage() 条目。
2058 解压缩数据时出错。
2059 安全沙箱侵犯:_ 无法覆盖由 _ 添加的 ExternalInterface 回调。
2060 安全沙箱侵犯:ExternalInterface 调用方 _ 无法访问 _。
2061 没有注册 ExternalInterface 回调 _。
2062 Event 的子级必须覆盖 clone() {return new MyEventClass (...);}。
2063 尝试执行 IME 命令时发生错误。 一个 IME 服务失败。
若使用的是 setConversionMode() 或 setEnabled() 方法,则 ActionScript 3.0 用 access 属性替换这些方法。
若使用的是 doConversion() 或 setComposition() 方法,则上述方法不受 Macintosh OSX 和 Macintosh Classic 支持。
2065 无法为此目标设置焦点。
2066 指定的计时器延迟超出范围。
2067 在此容器中 ExternalInterface 不可用。ExternalInterface 需要 Internet Explorer ActiveX、Firefox、Mozilla 1.7.5 及更高版本,或支持 NPRuntime 的其它浏览器。
2068 声音无效。
2069 Loader 类未实现此方法。
2070 安全沙箱侵犯:调用方 _ 无法访问属于 _ 的 Stage。
2071 Stage 类未实现此属性或方法。
2074 舞台太小,不适合下载 UI。
2075 已下载的文件无效。 可能的原因是文件解压缩失败、文件格式无效或签名验证失败。
2077 无法使用指定的输入参数执行此滤镜操作。
2078 无法修改时间轴上所放置的对象的名称属性。
2079 由 Bitmap 派生的类只能与 defineBits 字符(位图)相关联。
2082 连接失败,因为对象已连接。
2083 关闭失败,因为对象未连接。
2084 参数的 AMF 编码不能超过 40K。
2085 参数 _ 必须为非空字符串。
2086 mms.cfg 文件中的设置禁止此 FileReference 请求。
2087 FileReference.download() 文件名中包含禁用字符。 文件名不能包含空格或以下任何字符:
2088 Proxy 类未实现 getProperty。必须由子类覆盖。
2089 Proxy 类未实现 setProperty。必须由子类覆盖。
2090 Proxy 类未实现 callProperty。必须由子类覆盖。
2091 Proxy 类未实现 hasProperty。必须由子类覆盖。
2092 Proxy 类未实现 deleteProperty。必须由子类覆盖。
2093 Proxy 类未实现 getDescendants。必须由子类覆盖。
2094 事件调度递归溢出。 递归超过最大递归深度。(默认的最大递归深度为 256。)
2095 _ 无法调用回调 _。
2096 无法通过 ActionScript 设置 HTTP 请求标头 _。 您正在将一个禁用的 HTTP 标头添加到 HTTP 请求中。禁止使用以下标头:
NULL 标头字符串
Accept-Charset
Accept-Encoding
Accept-Ranges
Age
Allow
Allowed
Connection
Content-Length
Content-Location
Content-Range
Date
ETag
Expect
Host
Keep-Alive
Last-Modified
Location
Max-Forwards
Proxy-Authenticate
Proxy-Authorization
Public
Range
Referer
Retry-After
Server
TE
Trailer
Transfer-Encoding
Upgrade
URI
User-Agent
Vary
Via
Warning
WWW-Authenticate
x-flash-version
2097 FileFilter 数组的格式不正确。 存在两种有效格式:
只包含 Windows 文件扩展名的说明
包含 Windows 文件扩展名和 Macintosh 文件格式的说明。
这两种文件格式不能互换;您只能使用其中的一种。 有关详细信息,请参阅本语言参考中的 FileFilter 类。
2098 正在加载的对象不是 .swf 文件,因此无法从该文件请求 SWF 属性。
2099 正在加载的对象未充分加载,无法提供此信息。
2100 Loader.loadBytes() 中 ByteArray 参数的长度必须大于 0。
2101 传递给 URLVariables.decode() 的字符串必须是包含名称/值对的经 URL 编码的查询字符串。
2102 XMLNode 之前的参数必须是调用方的子级。
2103 XML 递归失败:新子级将创建无限循环。 可能是由于您正在尝试使对象互为子对象。例如,以下代码会生成此错误,因为 a 和 b 都在尝试将对方添加为子对象。
a.addChild(b); .addChild(a);
2105 Proxy 类未实现 nextNameIndex。必须由子类覆盖。
2106 Proxy 类未实现 nextName。必须由子类覆盖。
2107 Proxy 类未实现 nextValue。必须由子类覆盖。
2108 没有找到场景 _。
2109 在场景 _ 中找不到帧标签 _。
2110 只有调用方可以访问舞台并且位于 ActionScript 3.0 SWF 文件中时,才能设置 Security.disableAVM1Loading 的值。
2111 Security.disableAVM1Loading 为 true,因此已阻止当前对 ActionScript 1.0/2.0 SWF 文件的加载。
2112 假设 LoaderContext.ApplicationDomain 参数来自一个禁用的域。
2113 假设 LoaderContext.SecurityDomain 参数来自一个禁用的域。
2114 参数 _ 必须为 null。
2115 参数 _ 必须为 false。
2116 参数 _ 必须为 true。
2118 LoaderInfo 类未实现此方法。
2119 安全沙箱侵犯:调用方 _ 不能访问属于 _ 的 LoaderInfo.applicationDomain。
2121 安全沙箱侵犯:_:_ 不能访问 _。可以通过调用 Security.allowDomain 来解决此问题。
2122 安全沙箱侵犯:_:_ 不能访问 _。需要策略文件,但加载此媒体时未设置 checkPolicyFile 标志。
2123 安全沙箱侵犯:_:_ 不能访问 _。没有授予访问权限的策略文件。
2124 已加载文件的类型未知。
2125 安全沙箱侵犯:_ 不能使用运行时共享库 _,因为不允许在 ActionScript 3.0 和 ActionScript 1.0/2.0 对象之间跨越边界。
2126 必须连接 NetConnection 对象。
2127 FileReference POST 的数据类型不能是 ByteArray。
2129 连接到 _ 失败。
2130 无法刷新 SharedObject。
2131 无法找到定义 _。
2132 无法通过 netStatus 事件处理函数调用 NetConnection.connect。
2133 未注册回调 _。
2134 无法创建 SharedObject。
2135 安全沙箱侵犯:_:_ 不能访问 _。无法使用此 API 访问 RTMP 内容。
2136 SWF 文件 _ 中包含无效数据。
2137 安全沙箱侵犯:_ 不能在 _ 中导航窗口 _(allowScriptAccess 为 _)。尝试的 URL 是 _。
2138 无法解析丰富文本 XML。
2139 无法连接 SharedObject。
2140 安全沙箱侵犯:_ 不能加载 _。只能与本地文件系统的内容交互的 SWF 文件和只能与远程内容交互的 SWF 文件不能互相加载。
2141 一次只可能处理一个 PrintJob。
2142 安全沙箱侵犯:本地 SWF 文件不能使用 LoaderContext.securityDomain 属性。_ 正在尝试加载 _。
2143 AccessibilityImplementation.get_accRole() 必须由其默认值覆盖。
2144 AccessibilityImplementation.get_accState() 必须由其默认值覆盖。
2145 requestHeaders 的累积长度必须少于 8192 个字符。
2146 安全沙箱侵犯:_ 无法调用 _,因为 HTML/容器参数 allowNetworking 的值为 _。
2147 URL _ 中禁止的协议。
2148 SWF 文件 _ 无法访问本地资源 _。只有只能与本地文件系统的内容交互的 SWF 文件和受信任的本地 SWF 文件才可能访问本地资源。
2149 安全沙箱侵犯:_ 无法对 _ 进行 fscommand 调用(allowScriptAccess 为 _)。
2150 无法将对象添加为它的一个子对象(或子对象的子对象等)的子对象。
2151 设置对话框可见时无法进入全屏模式。
2152 不允许使用全屏模式。
2153 URLRequest.requestHeaders 数组必须只包含非空的 URLRequestHeader 对象。
1000 系统内存不足。 系统可用内存无法满足 Flash Player 编译代码的需要。请关闭系统上正在运行的某些应用程序或进程。
1001 未实现方法 _。
1002 Number.toPrecision 的范围是 1 至 21。Number.toFixed 和 Number.toExponential 的范围是 0 至 20。指定的值不在期望范围之内。 指定的值不在 precision 参数的期望范围之内。Number.toPrecision 的范围是 1 至 21。Number.toFixed 和 Number.toExponential 的范围是 0 至 20。
1003 radix 参数必须介于 2 至 36 之间;得到 _。 为方法或属性的 radix 参数传递的值小于 2 或大于 36。请传递一个介于 2 至 36 之间的值作为 radix 参数。
1004 对不兼容的对象调用方法 _。 尝试调用的方法不适用于指定对象。如果已将原型函数从一个对象复制到另一个对象然后又调用此函数,但目标对象类型与原始对象类型不同,则会发生此错误。请确保目标对象与原始对象的类型相同。有关详细信息,请参阅 ECMAScript Language Specification(《ECMAScript 语言规范》)第 3 版中的第 15 章。
1005 数组索引不是正整数 (_)。 尝试使用非正整数的索引值访问数组成员。仅传递正整数作为数组的索引值。
1006 _ 不是函数。 尝试调用不存在的函数时,发生此错误。请确保正在调用正确的函数且自 ActionScript 2.0 以来此 API 尚未发生更改。此外,请确保正在使用正确的对象。例如,使用以下代码时,将出现此错误(由于最后一行错误调用了变量 big 而未调用变量 blg):
var blg:String = "foo";
var big:Sprite = new Sprite();
var error:int = big.length();
1007 尝试对非构造函数进行实例化。
1008 _ 指代不明确;发现多个匹配的绑定。
1009 无法访问空对象引用的属性或方法。 计算结果为 null 的对象可以不包含任何属性。在某些意外(尽管有效)的情况下,可能发生此错误。以创建 Sprite 对象的以下代码为例。由于从未将此 Sprite 对象添加到显示列表中(使用 DisplayObjectContainer 对象的 addChild() 方法),因此其 stage 属性设置为 null。在这种情况下,此示例将生成此错误,这是因为 Sprite 对象的 stage 属性不能拥有任何属性:
import flash.display.Sprite;
var sprite1:Sprite = new Sprite();
var q:String = sprite1.stage.quality;
1010 术语未经定义且没有属性。 如果尝试访问并不存在的对象的属性,将发生此错误。例如:
var obj:Object = new Object();
obj.a = "foo";
trace(obj.b.prop);由于拼写错误也可能产生此错误,在下面的示例中,mc 表示显示列表中的 MovieClip 对象,stage 属性中的小写字母 s 被错误地拼写为大写字母 S(应该为 stage):trace(mc.Stage.quality);
1011 方法 _ 在偏移 _ 处包含非法的 opcode _。 请参见此表底部的注意。*
1012 最后一条指令超过了代码大小。 请参见此表底部的注意。*
1013 scopeDepth 为 0 时,无法调用 OP_findproperty。 请参见此表底部的注意。*
1014 无法找到 _ 类。
1015 方法 _ 无法设置默认的 xml 命名空间 请参见此表底部的注意。*
1016 类型 _ 不支持后代运算符 (..)。
1017 发生作用域堆栈上溢。 请参见此表底部的注意。*
1018 发生作用域堆栈下溢。 请参见此表底部的注意。*
1019 Getscopeobject _ 超出范围。 请参见此表底部的注意。*
1020 代码无法脱离某个方法的结尾。 请参见此表底部的注意。*
1021 方法中至少有一个分支目标未在有效指令中。 请参见此表底部的注意。*
1022 void 类型只能用作函数返回类型。 请参见此表底部的注意。*
1023 发生堆栈上溢。 请参见此表底部的注意。*
1024 发生堆栈下溢。 请参见此表底部的注意。*
1025 访问了无效的寄存器 _。 请参见此表底部的注意。*
1026 插槽 _ 超出 _ 的 slotCount=_。 请参见此表底部的注意。*
1027 Method_info _ 超出 method_count=_。 请参见此表底部的注意。*
1028 Disp_id _ 超过 _ 的 max_disp_id=_。 请参见此表底部的注意。*
1029 未在 _ 中定义 Disp_id _。 请参见此表底部的注意。*
1030 堆栈深度不平衡。 _ != _. 请参见此表底部的注意。*
1031 作用域深度不平衡。 _ != _. 请参见此表底部的注意。*
1032 Cpool 索引 _ 超出范围 _。 请参见此表底部的注意。*
1033 Cpool 条目 _ 类型错误。 请参见此表底部的注意。*
1034 类型强制失败:无法将 _ 转换为 _。
1035 方法 _ 中存在非法的超级表达式。 请参见此表底部的注意。*
1037 无法分配到 _ 上的方法 _。 请参见此表底部的注意。*
1038 已定义 _。 在同一作用域内,不能多次声明具有同一标识符名称的变量或函数。在 ActionScript 3.0 中,不同的代码块(如用于同一 function 定义中的两个 for 循环中的代码块)将被视为在同一作用域内。请参见此表底部的注意。*
1039 引用方法后才可以对其进行验证。 请参见此表底部的注意。*
1040 instanceof 的右侧必须为类或函数。 instanceof 运算符右侧的表达式必须为类或函数。
1041 运算符的右侧必须为类。 is 运算符右侧的表达式必须为类。
1042 不是 ABC 文件。major_version=_ minor_version=_。 使用播放器尝试播放的文件无效:用于生成此 SWF 的工具可能已过期,或此 SWF 本身可能已损坏。
1043 code_length=_ 无效。 请参见此表底部的注意。*
1044 MethodInfo-_ 不支持 flags=_。 请参见此表底部的注意。*
1045 不支持 traits kind=_。 请参见此表底部的注意。*
1046 定义前引用 MethodInfo-_。 请参见此表底部的注意。*
1047 未找到入口点。 请参见此表底部的注意。*
1049 原型对象必须为 vanilla 对象。 请参见此表底部的注意。*
1050 无法将 _ 转换为原始类型。 请参见此表底部的注意。*
1051 非法早期绑定访问 _。 请参见此表底部的注意。*
1052 传递给 _ 函数的 URI 无效。 请参见此表底部的注意。*
1053 在 _ 中非法覆盖 _。 请参见此表底部的注意。*
1054 异常处理函数中的非法范围或目标偏移。 请参见此表底部的注意。*
1056 无法在 _ 上创建属性 _。 正在尝试为非动态类实例中不存在的属性赋值。此操作仅适用于动态类的实例。
1057 _ 中只能包含方法。 请参见此表底部的注意。*
1058 非法操作数类型:_ 必须为 _。 请参见此表底部的注意。*
1059 定义前引用 ClassInfo-_。 请参见此表底部的注意。*
1060 ClassInfo _ 超过 class_count=_。 请参见此表底部的注意。*
1061 将值 _ 转换为 _ 时会损失精度。 如果尝试将小数赋给数据类型为 int 的属性,将出现此错误。
如果赋值超出范围,也会出现此错误,如下所示:var m0:int = 2147483648; // int.MAX_VALUE == 2147483647使用按位向左移位运算符 (<<) 时,也会出现此错误。例如,请考虑以下代码:var m0:uint = 0xFF;
var m1:uint = m0<<24;向左移位运算符 (<<) 的结果解释为 32 位带符号的 2 的补码数。在本示例中,结果为负值,将此结果赋予 uint 类型的属性时,将发生错误。解决方法如下所示:var m0:uint = 0xFF;
var m1:uint = uint(m0<<24);
1063 _ 中的参数数量不匹配。预期为 _,实际得到 _。
1064 无法将方法 _ 作为构造函数调用。 将提取的方法永久地绑定到提取这些方法的对象中。因此,以后不能将这些方法作为构造函数进行调用。例如,下面的代码将在类 A 中创建函数 f():
class A {
function f() {}
}在以下代码中,提取此函数将不会产生错误。但创建此函数的新实例将产生错误。
var a = new A()
var m = a.f // extract f, don't call it
m() // same as a.f()
new m() // causes this error
1065 未定义变量 _。 您所使用的词汇引用未定义。例如,在以下语句中,由于未定义 x,trace(x) 语句将生成错误。但是,由于定义了 y,因此 trace(y) 语句不会生成错误:
trace("hello world")
trace(x) // x is undefined
var y
trace(y) // No error, y is defined.
1066 不支持表单函数(“函数体”)。 与 JavaScript 不同,Flash 不使用 eval() 和 function() 动态编译代码。因此,在 ActionScript 3.0 中将其作为构造函数进行调用将生成此错误。
1067 本机方法 _ 中包含非法的方法体。 请参见此表底部的注意。*
1068 无法协调 _ 和 _。 请参见此表底部的注意。*
1069 属性 _ 在 _ 上找不到,没有默认值。 在非动态类实例中引用了未定义的属性。例如,当以下代码引用未定义且不能动态创建的 x 属性时,将生成此错误:
class A {} // sealed class, not dynamic
trace(new A().x) // no property x defined on A, and A is not dynamic
1070 未在 _ 上找到方法 _。 正在使用 super 语句调用函数,但超类中不存在该函数。例如,以下代码将生成此错误:
class A() {}
class B extends A {
function f() { trace(super.f()); } // error 1070, there is no f on A
}
1071 已将函数 _ 绑定到 _。
1072 Disp_id 0 是非法的。 请参见此表底部的注意。*
1073 由于出现重复的 disp_id _,因此已替换非覆盖方法 _。 请参见此表底部的注意。*
1074 在 _ 上非法写入只读属性 _。
1075 Math 不是函数。 正在尝试将 math() 作为函数进行调用,但 Math 是具有静态方法的类。
1076 Math 不是构造函数。 无法实例化 Math 类。
1077 在 _ 上非法读取只写属性 _。
1078 非法的 opcode/multiname 组合:_<_>。 请参见此表底部的注意。*
1079 不允许在加载代码中使用本机方法。 请参见此表底部的注意。*
1080 命名空间的值是非法的。 请参见此表底部的注意。*
1081 属性 _ 在 _ 上找不到,没有默认值。
1082 尚未设置默认的命名空间。 请参见此表底部的注意。*
1083 未绑定元素“_”的前缀“_”。 属性名称或元素名称具有前缀,但未找到匹配的命名空间。由于没有与 foo:x 匹配的 foo 命名空间,因此此语句生成错误:
<foo:x xmlns:clowns='http://circuscenter.org'>
1084 元素或属性 ("_") 与 QName 生成不匹配:QName::=(NCName':')?NCName。 将 foo: 或 :foo 用作元素或属性名称,但是冒号的另一侧没有内容。
1085 必须由相匹配的结束标签“</_>”终止元素类型“_”。
1086 方法 _ 仅作用于包含一个项的列表 如果 XMLList 类的列表中仅包含一个项,则此类将特定于 XML 的函数传播到它的一个子类。如果此列表中包含多个项,则例程会因此错误而失败。以下模拟 XML 函数的 XMLList 函数会发生此错误:
addNamespace、appendChild、childIndex、inScopeNamespaces、insertChildAfter、insertChildBefore, name、namespace、localName、namespaceDeclarations、nodeKind、prependChild、removeNamespace、replace、setChildren、setLocalName、setName 和 setNamespace。
1087 禁止为已建立索引的 XML 赋值。
1088 文档中根元素后面的标记的格式必须正确。 下面为可能产生此错误的原因:
将 XMLList 样式对象作为 XML 进行分析
字符串未均衡
1089 不支持向包含多个项的列表赋值。
1090 XML 分析器失败:元素格式不正确。 元素名称格式不正确。此示例中的元素名称格式不正确,因为结尾处的右尖括号 > 丢失:
<a/><b></b
1091 XML 分析器失败:CDATA 部分未结束。
1092 XML 分析器失败:XML 声明未结束。
1093 XML 分析器失败:DOCTYPE 声明未结束。
1094 XML 分析器失败:注释未结束。
1095 XML 分析器失败:属性未结束。
1096 XML 分析器失败:元素未结束。
1097 XML 分析器失败:指令处理未结束。
1098 用于无命名空间的前缀 _ 非法。 如果尝试传入具有非空前缀的空 URI,此命名空间构造函数将引发此错误,如本例所示:
ns = new Namespace ("prefix", "");
1100 从一个 RegExp 构造另一个 RegExp 时,无法提供标志。 由现有的正则表达式创建新的正则表达式时,也会复制现有表达式的标志。如要创建具有不同标志的正则表达式,请使用 new 运算符并按照需要设置标志。例如,此语句创建正则表达式并指定标志设置:
var re:RegExp = new RegExp("ali", /s)此语句也可以创建与 re 具有相同标志的正则表达式:
var re2:RegExp = new RegExp(re, ...)
1101 无法验证具有未知作用域的方法 _。 请参见此表底部的注意。*
1102 类型 _ 的默认值是非法的。 请参见此表底部的注意。*
1103 _ 类不能扩展最终基类。 请参见此表底部的注意。*
1104 已为元素“_”指定属性“_”。
1107 ABC 数据已损坏,系统尝试读取范围以外的数据。 请参见此表底部的注意。*
1108 OP_newclass opcode 用于错误的基类。 请参见此表底部的注意。*
1109 尝试从方法 _ 中直接调用未限定范围的函数 _。 请参见此表底部的注意。*
1110 _ 不能扩展 _。 请参见此表底部的注意。*
1111 _ 不能实现 _。 请参见此表底部的注意。*
1112 类强制中的参数数量不匹配。预期为 1,实际得到 _。
1113 OP_newactivation 用于没有 NEED_ACTIVATION 标志的方法中。 请参见此表底部的注意。*
1114 OP_getglobalslot 或 OP_setglobalslot 未用于全局作用域。 请参见此表底部的注意。*
1115 _ 不是构造函数。
1116 Function.prototype.apply 的第二个参数必须为数组。
1117 XML 名称无效:_。
1118 节点之间的循环体是非法的。
1119 类型 _ 的操作数不支持删除运算符。
1120 无法在 _ 上删除属性 _。
1121 方法 _ 存在重复的方法体。
1122 接口方法 _ 包含非法的方法体。
1123 类型 _ 不支持过滤运算符。
1124 OP_hasnext2 要求对象和索引使用不同的寄存器。
1502 脚本的执行时间大于 15 秒的默认超时期间。 超时期间过后执行脚本。(默认超时期间为 15 秒。)发生此错误后,脚本可以继续执行 15 秒,然后将终止脚本并引发编号为 1503 的运行时错误(脚本在 30 秒内未能退出,终止其执行)。
1503 30 秒后脚本未能退出,终止执行。 30 秒后仍然继续执行此脚本。如果此脚本的执行时间超过 15 秒(即默认的超时期间),Flash Player 将首先引发编号为 1502 的运行时错误(脚本的执行时间超过 15 秒的默认超时期间)。错误 1502 发生 15 秒后,发生此错误。
1507 参数 _ 不能为 null。
1508 为参数 _ 指定的值无效。 您可能正在尝试传递错误的数据类型。例如,代码
public function doSomething(const:int):void {
}
this ["doSomething"] ("str")在运行时将生成错误,原因是将 doSomething 转换为 int 数据类型。
1510 当回调参数为某个类的方法时,此可选参数必须为 null。
2000 没有活动的安全上下文。
2001 指定的参数太少;实际得到 _,预期为 _。
2002 尝试对无效的套接字进行操作。
2003 指定的套接字端口号无效。 有效范围介于 0 到 65535 之间。有关详细信息,请参阅本语言参考中的“套接字连接”。
2004 其中一个参数无效。
2005 参数 _ 的类型错误。应为类型 _。
2006 提供的索引超出范围。
2007 参数 _ 必须为非空值。
2008 参数 _ 必须为可接受值之一。
2009 此方法不能用于具有样式表的文本字段。
2010 不允许只能与本地文件系统的内容交互的 SWF 文件使用套接字。
2011 到 _:_ 的套接字连接失败。 存在网络问题。可能是由于未解析 DNS 名称或未连接 TCP 套接字。
2012 无法实例化 _ 类。
2013 仅可用于 Flash 创作的功能。
2014 此时不可用的功能。 本系统不支持此功能。
2015 BitmapData 无效。
2017 只有受信任的本地文件可能会导致 Flash Player 退出。
2018 System.exit 仅在独立的 Flash Player 中可用。
2019 指定的深度无效。
2020 无法交换具有不同父级的 MovieClips 对象。
2021 对象创建失败。
2022 必须从 DisplayObject 继承 _ 类以链接到元件。
2023 必须从 Sprite 继承 _ 类以链接到根。
2024 无法将对象作为其自身的子级进行添加。
2025 所提供的 DisplayObject 必须为调用方的子级。
2026 导航至 URL _ 时发生错误。 可能的原因是此 URL 不存在、网络连接有问题或者 URL 在安全沙箱之外。
2027 参数 _ 必须是非负数;得到 _。
2028 只能与本地文件系统的内容交互的 SWF 文件 _ 无法访问 Internet URL _。
2029 此 URLStream 对象没有已打开的流。
2030 到达文件末尾。
2031 套接字错误。 发生套接字错误。有关详细信息,请参阅本语言参考中的“套接字连接”。
2032 流错误。
2033 键生成失败。
2035 没有找到 URL。
2036 加载从未完成。
2037 函数的调用顺序不正确,或者之前的调用未成功。
2038 文件 I/O 错误。
2039 远程 URL 协议无效。远程 URL 协议必须是 HTTP 或 HTTPS。
2041 一次只能执行一个文件浏览会话。
2044 未处理 _:。
2047 安全沙箱侵犯:_:_ 无法访问 _。
2048 安全沙箱侵犯:_ 无法从 _ 加载数据。
2049 安全沙箱侵犯:_ 无法将数据上载至 _。
2051 安全沙箱侵犯:_ 无法在 _ 中计算脚本 URL(allowScriptAccess 为 _)。尝试的 URL 是 _。
2052 仅允许对 allowDomain 和 allowInsecureDomain 使用 String 参数。
2053 安全沙箱侵犯:_ 无法清除由 _ 设置的间隔计时器。
2054 使用过的 Security.exactSettings 的值无法进行更改。
2055 无法启动打印作业。
2056 无法将打印作业发送到打印机。
2057 无法将页面添加至打印作业中。 未正确使用 addPage() 方法。请参阅此语言参考中的 addPage() 条目。
2058 解压缩数据时出错。
2059 安全沙箱侵犯:_ 无法覆盖由 _ 添加的 ExternalInterface 回调。
2060 安全沙箱侵犯:ExternalInterface 调用方 _ 无法访问 _。
2061 没有注册 ExternalInterface 回调 _。
2062 Event 的子级必须覆盖 clone() {return new MyEventClass (...);}。
2063 尝试执行 IME 命令时发生错误。 一个 IME 服务失败。
若使用的是 setConversionMode() 或 setEnabled() 方法,则 ActionScript 3.0 用 access 属性替换这些方法。
若使用的是 doConversion() 或 setComposition() 方法,则上述方法不受 Macintosh OSX 和 Macintosh Classic 支持。
2065 无法为此目标设置焦点。
2066 指定的计时器延迟超出范围。
2067 在此容器中 ExternalInterface 不可用。ExternalInterface 需要 Internet Explorer ActiveX、Firefox、Mozilla 1.7.5 及更高版本,或支持 NPRuntime 的其它浏览器。
2068 声音无效。
2069 Loader 类未实现此方法。
2070 安全沙箱侵犯:调用方 _ 无法访问属于 _ 的 Stage。
2071 Stage 类未实现此属性或方法。
2074 舞台太小,不适合下载 UI。
2075 已下载的文件无效。 可能的原因是文件解压缩失败、文件格式无效或签名验证失败。
2077 无法使用指定的输入参数执行此滤镜操作。
2078 无法修改时间轴上所放置的对象的名称属性。
2079 由 Bitmap 派生的类只能与 defineBits 字符(位图)相关联。
2082 连接失败,因为对象已连接。
2083 关闭失败,因为对象未连接。
2084 参数的 AMF 编码不能超过 40K。
2085 参数 _ 必须为非空字符串。
2086 mms.cfg 文件中的设置禁止此 FileReference 请求。
2087 FileReference.download() 文件名中包含禁用字符。 文件名不能包含空格或以下任何字符:
2088 Proxy 类未实现 getProperty。必须由子类覆盖。
2089 Proxy 类未实现 setProperty。必须由子类覆盖。
2090 Proxy 类未实现 callProperty。必须由子类覆盖。
2091 Proxy 类未实现 hasProperty。必须由子类覆盖。
2092 Proxy 类未实现 deleteProperty。必须由子类覆盖。
2093 Proxy 类未实现 getDescendants。必须由子类覆盖。
2094 事件调度递归溢出。 递归超过最大递归深度。(默认的最大递归深度为 256。)
2095 _ 无法调用回调 _。
2096 无法通过 ActionScript 设置 HTTP 请求标头 _。 您正在将一个禁用的 HTTP 标头添加到 HTTP 请求中。禁止使用以下标头:
NULL 标头字符串
Accept-Charset
Accept-Encoding
Accept-Ranges
Age
Allow
Allowed
Connection
Content-Length
Content-Location
Content-Range
Date
ETag
Expect
Host
Keep-Alive
Last-Modified
Location
Max-Forwards
Proxy-Authenticate
Proxy-Authorization
Public
Range
Referer
Retry-After
Server
TE
Trailer
Transfer-Encoding
Upgrade
URI
User-Agent
Vary
Via
Warning
WWW-Authenticate
x-flash-version
2097 FileFilter 数组的格式不正确。 存在两种有效格式:
只包含 Windows 文件扩展名的说明
包含 Windows 文件扩展名和 Macintosh 文件格式的说明。
这两种文件格式不能互换;您只能使用其中的一种。 有关详细信息,请参阅本语言参考中的 FileFilter 类。
2098 正在加载的对象不是 .swf 文件,因此无法从该文件请求 SWF 属性。
2099 正在加载的对象未充分加载,无法提供此信息。
2100 Loader.loadBytes() 中 ByteArray 参数的长度必须大于 0。
2101 传递给 URLVariables.decode() 的字符串必须是包含名称/值对的经 URL 编码的查询字符串。
2102 XMLNode 之前的参数必须是调用方的子级。
2103 XML 递归失败:新子级将创建无限循环。 可能是由于您正在尝试使对象互为子对象。例如,以下代码会生成此错误,因为 a 和 b 都在尝试将对方添加为子对象。
a.addChild(b); .addChild(a);
2105 Proxy 类未实现 nextNameIndex。必须由子类覆盖。
2106 Proxy 类未实现 nextName。必须由子类覆盖。
2107 Proxy 类未实现 nextValue。必须由子类覆盖。
2108 没有找到场景 _。
2109 在场景 _ 中找不到帧标签 _。
2110 只有调用方可以访问舞台并且位于 ActionScript 3.0 SWF 文件中时,才能设置 Security.disableAVM1Loading 的值。
2111 Security.disableAVM1Loading 为 true,因此已阻止当前对 ActionScript 1.0/2.0 SWF 文件的加载。
2112 假设 LoaderContext.ApplicationDomain 参数来自一个禁用的域。
2113 假设 LoaderContext.SecurityDomain 参数来自一个禁用的域。
2114 参数 _ 必须为 null。
2115 参数 _ 必须为 false。
2116 参数 _ 必须为 true。
2118 LoaderInfo 类未实现此方法。
2119 安全沙箱侵犯:调用方 _ 不能访问属于 _ 的 LoaderInfo.applicationDomain。
2121 安全沙箱侵犯:_:_ 不能访问 _。可以通过调用 Security.allowDomain 来解决此问题。
2122 安全沙箱侵犯:_:_ 不能访问 _。需要策略文件,但加载此媒体时未设置 checkPolicyFile 标志。
2123 安全沙箱侵犯:_:_ 不能访问 _。没有授予访问权限的策略文件。
2124 已加载文件的类型未知。
2125 安全沙箱侵犯:_ 不能使用运行时共享库 _,因为不允许在 ActionScript 3.0 和 ActionScript 1.0/2.0 对象之间跨越边界。
2126 必须连接 NetConnection 对象。
2127 FileReference POST 的数据类型不能是 ByteArray。
2129 连接到 _ 失败。
2130 无法刷新 SharedObject。
2131 无法找到定义 _。
2132 无法通过 netStatus 事件处理函数调用 NetConnection.connect。
2133 未注册回调 _。
2134 无法创建 SharedObject。
2135 安全沙箱侵犯:_:_ 不能访问 _。无法使用此 API 访问 RTMP 内容。
2136 SWF 文件 _ 中包含无效数据。
2137 安全沙箱侵犯:_ 不能在 _ 中导航窗口 _(allowScriptAccess 为 _)。尝试的 URL 是 _。
2138 无法解析丰富文本 XML。
2139 无法连接 SharedObject。
2140 安全沙箱侵犯:_ 不能加载 _。只能与本地文件系统的内容交互的 SWF 文件和只能与远程内容交互的 SWF 文件不能互相加载。
2141 一次只可能处理一个 PrintJob。
2142 安全沙箱侵犯:本地 SWF 文件不能使用 LoaderContext.securityDomain 属性。_ 正在尝试加载 _。
2143 AccessibilityImplementation.get_accRole() 必须由其默认值覆盖。
2144 AccessibilityImplementation.get_accState() 必须由其默认值覆盖。
2145 requestHeaders 的累积长度必须少于 8192 个字符。
2146 安全沙箱侵犯:_ 无法调用 _,因为 HTML/容器参数 allowNetworking 的值为 _。
2147 URL _ 中禁止的协议。
2148 SWF 文件 _ 无法访问本地资源 _。只有只能与本地文件系统的内容交互的 SWF 文件和受信任的本地 SWF 文件才可能访问本地资源。
2149 安全沙箱侵犯:_ 无法对 _ 进行 fscommand 调用(allowScriptAccess 为 _)。
2150 无法将对象添加为它的一个子对象(或子对象的子对象等)的子对象。
2151 设置对话框可见时无法进入全屏模式。
2152 不允许使用全屏模式。
2153 URLRequest.requestHeaders 数组必须只包含非空的 URLRequestHeader 对象。
2007
12-23
编译器警告消息识别有效且成功编译的代码,但此代码可能不是作者想要的代码。若要检测这些可能存在的问题,请在警告模式下编译 ActionScript 项目。 其中一些警告(例如,“缺少类型声明。”)属于编码风格的选择问题,您既可以遵循也可以忽略。其它警告(例如,“赋值不能为 null。”)指出语句虽然有效,但无法实现用户所期望的行为。第三类警告涵盖将 ActionScript 2.0 代码移植到 ActionScript 3.0 时可能遇到的问题。 代码 消息 说明
1009 _“_”没有类型声明。 不声明数据类型是一种个人编码风格偏好。函数的返回类型、参数或变量没有类型声明。但如果使用类型声明,编译器就可以编写出更为有效的代码并且在编译时检测到更多的错误。如果要在无法使用类型声明时得到提示,可以启用此警告。
1013 类型为 _ 的变量不能为 undefined。比较之前,undefined 值将是强制为 _ 的类型。 只有类型为 * 的变量才能为 undefined。未初始化的变量的默认值是 null(而不是 undefined),但有几种例外情况。例外包括:Boolean 变量,其默认值为 false。Number 变量的默认值为 NaN;int 或 uint 变量的默认值为 0。
1031 迁移问题:新 _ 的结果将是 _ 的返回值,而不是该函数的新实例。 这是一个代码迁移警告。在 ActionScript 3.0 和 ActionScript 2.0 中,检测到的代码具有不同的行为,如下面的示例所示:
function f(){
this.b = 22;
this.a = new Array(2);Â?
this.a[0] = 33;
this.a[1] = 44;
return a;
}
// 在 ActionScript 2.0 中返回 f 的一个新实例,在 ActionScript 3.0 中返回一个由两个元素组成的新数组
var d = new f();Â? // 此处将出现警告
trace(d.a); // 在 ActionScript 3.0 中未定义,在 ActionScript 2.0 中为 [33,44]
1035 使用了没有参数的 Boolean()。 这是一个代码迁移警告。Boolean() 函数在 ActionScript 3.0 中返回 false,但在 ActionScript 2.0 中返回 undefined。
1039 迁移问题:使用空字符串参数调用 Number('') 函数时,它将在 ActionScript 3.0 中返回 0,而在 ActionScript 2.0 中返回 NaN。 这是一个代码迁移警告。使用 String 参数调用的 Number() 方法会跳过该字符串中的所有空白,并在检测不到数字时返回默认值 0。在 ActionScript 2.0 中,该字符串中的任何空白都会导致结果为 NaN。
1045 迁移问题:Null 元素和 undefined 元素的 Array.toString() 处理已更改。 这是一个代码迁移警告。在 ActionScript 2.0 中,null 数组元素转换为 null,而 undefined 元素转换为 undefined。在 ActionScript 3.0 中,null 和 undefined 元素都转换为空字符串 ''。如果您的代码分析了 Array 中的 toString() 输出,您可能需要针对这两种情况的区别对代码进行调整。
1059 迁移问题:不再支持属性 _。_。 这是一个代码迁移警告。您正在尝试使用的属性未存在于 ActionScript 3.0 中。
1061 迁移问题:不再支持方法 _。_。 这是一个代码迁移警告。ActionScript 3.0 中不存在您正在尝试使用的方法。
1066 不再支持 __resolve。
1067 迁移问题:不再支持 __resolve。为了获得类似功能,请使用新的 Proxy 类。 这是一个代码迁移警告。有关替换 __resolve 的详细信息,请参阅本语言参考中的 Proxy。
1071 迁移问题:不再支持 _level。有关详细信息,请参阅 flash.display 包。 这是一个代码迁移警告。您正在尝试使用的属性未存在于 ActionScript 3.0 中。
1073 迁移问题:_ 不是动态类。不能以动态方式向实例中添加成员。 这是一个代码迁移警告。在 ActionScript 2.0 中,许多类(如 Number)是动态的,这意味着可以在运行时向这些类的实例中添加新属性。如果代码尝试向非动态类的实例中添加属性,则会产生此警告。
1083 迁移问题:由于 this 关键字范围的变化,方法 _ 在 ActionScript 3.0 中将有不同的行为。有关其它信息,请参阅有关警告 1083 的条目。 这是一个代码迁移警告。将对象的方法作为值(通常是回调函数)使用时,将会生成此警告。在 ActionScript 2.0 中,在调用函数的上下文中执行函数;在 ActionScript 3.0 中,总是在定义函数的上下文中执行函数。因此,变量和方法的名称将被解析为回调函数所属的类,而不是与调用该函数的上下文有关的类,如下面的示例所示:
class a
{
var x;
function a() { x = 1; }
function b() { trace(x); }
}var A:a = new a();
var f:Function = a.b; // 此处将触发警告
var x = 22;
f(); // 在 ActionScript 3.0 中输出 1,在 ActionScript 2.0 中输出 22
1085 _ 的范围将是默认命名空间 _ 的内部。它在此包之外不可见。 不声明命名空间是一种个人编码风格偏好。如果要在忘记声明定义的命名空间或访问说明符时得到提示,可以启用此警告。如果没有命名空间或访问说明符,该定义对于此文件之外的代码是不可见的。要使该定义对于此文件之外的代码是可见的,请使用访问说明符 public 或命名空间声明对该定义进行声明。要使该定义的作用范围仅限于此文件并避免生成此警告,请将该定义声明为 private。
1087 迁移问题:ActionScript 3.0 以随机顺序在一条“for x in target”语句之内迭代对象的属性。 这是一个代码迁移警告。在 ActionScript 2.0 中,对象属性的处理顺序始终不变。在 ActionScript 3.0 中,该顺序是随机的,可因计算机而异。如果出现意外的排序行为,请检查此循环,以确定此行为更改是否会影响代码。
1089 错误代码:_。 这是由于源文件遭到破坏或编译器代码中出现错误造成的。请与 Adobe, Inc. 联系,以便将错误登记备案。
1091 迁移问题:_ 这是一个代码迁移警告。在 ActionScript 2.0 中,如果声明方法时使用的是特殊名称(如 onMouseDown),那么,在出现特定事件时,Flash 可能会调用该方法。在 ActionScript 3.0 中,必须通过方法来调用 addEventListener(),从而对这一函数进行注册以接收该事件。有关详细信息,请参阅本语言参考中的 addEventListener。
1093 在应为 uint(非负)值的地方使用负值。 将负值赋给 uint 数据类型的变量将产生极大的正值。 var x:uint = -1; trace(x); // 4294967295.
1097 与 null 的比较不合逻辑。类型为 _ 的变量不能为 null。 Boolean、int、uint 和 Number 类型的实例不能为 null。与 Boolean 数据类型比较之前,比较运算符类型将 null 转换成 false;与 Number、int 或 uint 数据类型比较之前,将其转换成 0。
1099 与 NaN 的比较不合逻辑。此语句始终计算为 false。 NaN 具有独特的数学属性,任何涉及该属性的比较运算都计算为 false。改用全局 isNaN() 函数检测 NaN 值,如下面的示例所示:
trace(NaN == NaN); // false!
trace(NaN != NaN); // 还是 false!
trace(isNaN(NaN)); // true
1101 条件语句之内的赋值语句。您指的是 == 而不是 = 吗? = 赋值语句的结果是该 = 语句右边的值。可以将赋值语句用作条件测试,但不建议这样做。通常,出现 = 是由于计划执行 == 相等测试时的键入错误造成的,如下面的示例所示:
var x:Boolean = false;
var y:Boolean = true;
// 很难确定下面一行是有意将 x 的值设置为 y 的值,还是属于键入错误
if (x = y) { trace("x is assigned y's value of true, making the conditional test evaluate as true."); }
1103 使用了 null 值,但是应为 _ 值。 不能将 null 作为值赋给 Boolean、Number、int 和 uint 变量。赋给 Boolean 数据类型时,null 值会隐式转换为 false,而赋给 int、uint 或 Number 数据类型时会转换为 0。
1105 尚未指定类 _ 的构造函数。 不指定构造函数是一种个人编码风格偏好。如果需要始终为类声明构造函数,可以启用此警告。此警告旨在帮助您发现类名称更改但其构造函数名称没有更改的情况。不启用此警告时此类情况不会被标记为问题,前一个构造函数看上去是一个标准函数。
1111 未初始化该常量。
1113 Array(x) 与新 Array(x) 具有相同的行为。若要将某个值转换成 Array 类型,请将表达式 x 用作 Array 而非 Array(x)。
1115 输入此构造函数之前,将会执行 super() 语句。如果要显式控制 super() 语句的执行时间,请在该构造函数中添加对该语句的调用。 在构造函数中添加对 super() 的调用是一种个人编码风格偏好。如果需要始终明确 super() 的调用时间,可以启用此警告。启用此警告对于打算在某些本地初始化代码之后调用 super() 但忘记对其进行添加的情况非常有用。
3552 与使用 TextField.appendText() 方法相比,使用 += 将文本追加到 TextField 的效率低很多倍。 有关此重要文本优化操作的详细信息,请参阅本语言参考中有关 TextField 类的 appendText() 方法的内容。
3554 使用了 Function 值,但是应为类型 _。此函数参考之后可能缺少括号 ()。 在 ActionScript 中,可以将函数本身用作值。此处所述的代码使用的是 Function 类型的值,但需要的是 Function、Object 或 * 之外的类型。通常,这表示出现函数名称之后遗漏括号 () 的键入错误。
3556 不推荐使用 instanceof 运算符,请改用 is 运算符。
3574 迁移错误:ActionScript 2.0 XML 类已重命名为 XMLDocument。 这是一个代码迁移警告。在 ActionScript 3.0 和 ActionScript 2.0 中,XML 是不同的类。ActionScript 3.0 中的 XMLDocument 类与 ActionScript 2.0 中的 XML 类等效。ActionScript 3.0 XML 类通过更为简便和更加强大的 API 提供了增强的功能。有关其它详细信息,请参阅《ActionScript 语言参考》中的 XML。
3576 Date(x) 与新的 Date().toString() 具有相同的行为。若要将某个值转换为 Date 类型,请使用“x as Date”代替 Date(x)。
3582 如果以相同名称将包导入为当前类,将在此作用域中隐藏该类的标识符。
3584 指定了多个名称为“_”的参数。对该参数的引用将始终解析为最后一个参数。
3590 使用了非 Boolean 值,但是应为 Boolean 值。
3591 使用了 _,但是应为 Boolean 值。表达式将强制为 Boolean 类型。
3593 _ 不是动态类 _ 的可识别属性。 在严谨的编译模式下,不会在动态类的实例中检查未定义属性。类型 Date、RegExp 和 Error 是动态的,以便向后与 ECMAScript 兼容。此警告在这些类的实例中找到了对未定义属性的使用。一个常见的问题是尝试获取或设置的 Date 值的 year 属性不存在。正确的属性名称是 fullYear。
3595 _ 不是动态类 _ 的可识别方法。 在严谨的编译模式下,不会在动态类的实例中检查未定义的方法。类型 Date、RegExp 和 Error 是动态的,以便向后与 ECMAScript 兼容。此警告在这些类的实例中找到了对未定义方法的使用。
3597 重复的变量定义。 编译器检测到变量的重复定义。这会导致意外的结果。ActionScript 不支持变量的块级别作用范围。在函数体内定义的所有变量属于同一范围,即便这些变量在 if 语句、while 语句和 for 语句中定义,也是如此。例如,下面的代码会重新声明变量 x 两次: function test() {
var x:Number = 10;
if (true) {
for (var x=0; x < 5; x++) // 此处将出现警告,这是 x 的第二次定义
trace(x);
}
trace(x); // 是 5,而不是 10。由上面的 for 循环设置的最后一个值是 x 的当前值
}
3598 定义的名称和已导入的包的名称相同。如果不加限定地引用该名称,则该名称将被解析为包而不是定义。
3599 定义的名称和已导入的包的名称相同。如果不加限定地引用该名称,则该名称将被解析为包而不是定义。 如果某定义的名称与范围内的包相同,则对该名称的任何非限定引用都将解析为该包,而不是解析为该定义。这会在尝试引用该变量时导致意外的错误。为此,必须限定对该定义的所有引用,以便将其解析为该定义,而不是解析为该包。
3600 可能试图删除固定属性。
3601 不能删除声明属性 _。若要释放相关内存,请将其值设置为 null。 delete 会从对象中动态删除定义的属性。不能删除类的声明属性,该操作将失败且无任何提示。若要释放此变量的相关内存,请将其值设置为 null。
1009 _“_”没有类型声明。 不声明数据类型是一种个人编码风格偏好。函数的返回类型、参数或变量没有类型声明。但如果使用类型声明,编译器就可以编写出更为有效的代码并且在编译时检测到更多的错误。如果要在无法使用类型声明时得到提示,可以启用此警告。
1013 类型为 _ 的变量不能为 undefined。比较之前,undefined 值将是强制为 _ 的类型。 只有类型为 * 的变量才能为 undefined。未初始化的变量的默认值是 null(而不是 undefined),但有几种例外情况。例外包括:Boolean 变量,其默认值为 false。Number 变量的默认值为 NaN;int 或 uint 变量的默认值为 0。
1031 迁移问题:新 _ 的结果将是 _ 的返回值,而不是该函数的新实例。 这是一个代码迁移警告。在 ActionScript 3.0 和 ActionScript 2.0 中,检测到的代码具有不同的行为,如下面的示例所示:
function f(){
this.b = 22;
this.a = new Array(2);Â?
this.a[0] = 33;
this.a[1] = 44;
return a;
}
// 在 ActionScript 2.0 中返回 f 的一个新实例,在 ActionScript 3.0 中返回一个由两个元素组成的新数组
var d = new f();Â? // 此处将出现警告
trace(d.a); // 在 ActionScript 3.0 中未定义,在 ActionScript 2.0 中为 [33,44]
1035 使用了没有参数的 Boolean()。 这是一个代码迁移警告。Boolean() 函数在 ActionScript 3.0 中返回 false,但在 ActionScript 2.0 中返回 undefined。
1039 迁移问题:使用空字符串参数调用 Number('') 函数时,它将在 ActionScript 3.0 中返回 0,而在 ActionScript 2.0 中返回 NaN。 这是一个代码迁移警告。使用 String 参数调用的 Number() 方法会跳过该字符串中的所有空白,并在检测不到数字时返回默认值 0。在 ActionScript 2.0 中,该字符串中的任何空白都会导致结果为 NaN。
1045 迁移问题:Null 元素和 undefined 元素的 Array.toString() 处理已更改。 这是一个代码迁移警告。在 ActionScript 2.0 中,null 数组元素转换为 null,而 undefined 元素转换为 undefined。在 ActionScript 3.0 中,null 和 undefined 元素都转换为空字符串 ''。如果您的代码分析了 Array 中的 toString() 输出,您可能需要针对这两种情况的区别对代码进行调整。
1059 迁移问题:不再支持属性 _。_。 这是一个代码迁移警告。您正在尝试使用的属性未存在于 ActionScript 3.0 中。
1061 迁移问题:不再支持方法 _。_。 这是一个代码迁移警告。ActionScript 3.0 中不存在您正在尝试使用的方法。
1066 不再支持 __resolve。
1067 迁移问题:不再支持 __resolve。为了获得类似功能,请使用新的 Proxy 类。 这是一个代码迁移警告。有关替换 __resolve 的详细信息,请参阅本语言参考中的 Proxy。
1071 迁移问题:不再支持 _level。有关详细信息,请参阅 flash.display 包。 这是一个代码迁移警告。您正在尝试使用的属性未存在于 ActionScript 3.0 中。
1073 迁移问题:_ 不是动态类。不能以动态方式向实例中添加成员。 这是一个代码迁移警告。在 ActionScript 2.0 中,许多类(如 Number)是动态的,这意味着可以在运行时向这些类的实例中添加新属性。如果代码尝试向非动态类的实例中添加属性,则会产生此警告。
1083 迁移问题:由于 this 关键字范围的变化,方法 _ 在 ActionScript 3.0 中将有不同的行为。有关其它信息,请参阅有关警告 1083 的条目。 这是一个代码迁移警告。将对象的方法作为值(通常是回调函数)使用时,将会生成此警告。在 ActionScript 2.0 中,在调用函数的上下文中执行函数;在 ActionScript 3.0 中,总是在定义函数的上下文中执行函数。因此,变量和方法的名称将被解析为回调函数所属的类,而不是与调用该函数的上下文有关的类,如下面的示例所示:
class a
{
var x;
function a() { x = 1; }
function b() { trace(x); }
}var A:a = new a();
var f:Function = a.b; // 此处将触发警告
var x = 22;
f(); // 在 ActionScript 3.0 中输出 1,在 ActionScript 2.0 中输出 22
1085 _ 的范围将是默认命名空间 _ 的内部。它在此包之外不可见。 不声明命名空间是一种个人编码风格偏好。如果要在忘记声明定义的命名空间或访问说明符时得到提示,可以启用此警告。如果没有命名空间或访问说明符,该定义对于此文件之外的代码是不可见的。要使该定义对于此文件之外的代码是可见的,请使用访问说明符 public 或命名空间声明对该定义进行声明。要使该定义的作用范围仅限于此文件并避免生成此警告,请将该定义声明为 private。
1087 迁移问题:ActionScript 3.0 以随机顺序在一条“for x in target”语句之内迭代对象的属性。 这是一个代码迁移警告。在 ActionScript 2.0 中,对象属性的处理顺序始终不变。在 ActionScript 3.0 中,该顺序是随机的,可因计算机而异。如果出现意外的排序行为,请检查此循环,以确定此行为更改是否会影响代码。
1089 错误代码:_。 这是由于源文件遭到破坏或编译器代码中出现错误造成的。请与 Adobe, Inc. 联系,以便将错误登记备案。
1091 迁移问题:_ 这是一个代码迁移警告。在 ActionScript 2.0 中,如果声明方法时使用的是特殊名称(如 onMouseDown),那么,在出现特定事件时,Flash 可能会调用该方法。在 ActionScript 3.0 中,必须通过方法来调用 addEventListener(),从而对这一函数进行注册以接收该事件。有关详细信息,请参阅本语言参考中的 addEventListener。
1093 在应为 uint(非负)值的地方使用负值。 将负值赋给 uint 数据类型的变量将产生极大的正值。 var x:uint = -1; trace(x); // 4294967295.
1097 与 null 的比较不合逻辑。类型为 _ 的变量不能为 null。 Boolean、int、uint 和 Number 类型的实例不能为 null。与 Boolean 数据类型比较之前,比较运算符类型将 null 转换成 false;与 Number、int 或 uint 数据类型比较之前,将其转换成 0。
1099 与 NaN 的比较不合逻辑。此语句始终计算为 false。 NaN 具有独特的数学属性,任何涉及该属性的比较运算都计算为 false。改用全局 isNaN() 函数检测 NaN 值,如下面的示例所示:
trace(NaN == NaN); // false!
trace(NaN != NaN); // 还是 false!
trace(isNaN(NaN)); // true
1101 条件语句之内的赋值语句。您指的是 == 而不是 = 吗? = 赋值语句的结果是该 = 语句右边的值。可以将赋值语句用作条件测试,但不建议这样做。通常,出现 = 是由于计划执行 == 相等测试时的键入错误造成的,如下面的示例所示:
var x:Boolean = false;
var y:Boolean = true;
// 很难确定下面一行是有意将 x 的值设置为 y 的值,还是属于键入错误
if (x = y) { trace("x is assigned y's value of true, making the conditional test evaluate as true."); }
1103 使用了 null 值,但是应为 _ 值。 不能将 null 作为值赋给 Boolean、Number、int 和 uint 变量。赋给 Boolean 数据类型时,null 值会隐式转换为 false,而赋给 int、uint 或 Number 数据类型时会转换为 0。
1105 尚未指定类 _ 的构造函数。 不指定构造函数是一种个人编码风格偏好。如果需要始终为类声明构造函数,可以启用此警告。此警告旨在帮助您发现类名称更改但其构造函数名称没有更改的情况。不启用此警告时此类情况不会被标记为问题,前一个构造函数看上去是一个标准函数。
1111 未初始化该常量。
1113 Array(x) 与新 Array(x) 具有相同的行为。若要将某个值转换成 Array 类型,请将表达式 x 用作 Array 而非 Array(x)。
1115 输入此构造函数之前,将会执行 super() 语句。如果要显式控制 super() 语句的执行时间,请在该构造函数中添加对该语句的调用。 在构造函数中添加对 super() 的调用是一种个人编码风格偏好。如果需要始终明确 super() 的调用时间,可以启用此警告。启用此警告对于打算在某些本地初始化代码之后调用 super() 但忘记对其进行添加的情况非常有用。
3552 与使用 TextField.appendText() 方法相比,使用 += 将文本追加到 TextField 的效率低很多倍。 有关此重要文本优化操作的详细信息,请参阅本语言参考中有关 TextField 类的 appendText() 方法的内容。
3554 使用了 Function 值,但是应为类型 _。此函数参考之后可能缺少括号 ()。 在 ActionScript 中,可以将函数本身用作值。此处所述的代码使用的是 Function 类型的值,但需要的是 Function、Object 或 * 之外的类型。通常,这表示出现函数名称之后遗漏括号 () 的键入错误。
3556 不推荐使用 instanceof 运算符,请改用 is 运算符。
3574 迁移错误:ActionScript 2.0 XML 类已重命名为 XMLDocument。 这是一个代码迁移警告。在 ActionScript 3.0 和 ActionScript 2.0 中,XML 是不同的类。ActionScript 3.0 中的 XMLDocument 类与 ActionScript 2.0 中的 XML 类等效。ActionScript 3.0 XML 类通过更为简便和更加强大的 API 提供了增强的功能。有关其它详细信息,请参阅《ActionScript 语言参考》中的 XML。
3576 Date(x) 与新的 Date().toString() 具有相同的行为。若要将某个值转换为 Date 类型,请使用“x as Date”代替 Date(x)。
3582 如果以相同名称将包导入为当前类,将在此作用域中隐藏该类的标识符。
3584 指定了多个名称为“_”的参数。对该参数的引用将始终解析为最后一个参数。
3590 使用了非 Boolean 值,但是应为 Boolean 值。
3591 使用了 _,但是应为 Boolean 值。表达式将强制为 Boolean 类型。
3593 _ 不是动态类 _ 的可识别属性。 在严谨的编译模式下,不会在动态类的实例中检查未定义属性。类型 Date、RegExp 和 Error 是动态的,以便向后与 ECMAScript 兼容。此警告在这些类的实例中找到了对未定义属性的使用。一个常见的问题是尝试获取或设置的 Date 值的 year 属性不存在。正确的属性名称是 fullYear。
3595 _ 不是动态类 _ 的可识别方法。 在严谨的编译模式下,不会在动态类的实例中检查未定义的方法。类型 Date、RegExp 和 Error 是动态的,以便向后与 ECMAScript 兼容。此警告在这些类的实例中找到了对未定义方法的使用。
3597 重复的变量定义。 编译器检测到变量的重复定义。这会导致意外的结果。ActionScript 不支持变量的块级别作用范围。在函数体内定义的所有变量属于同一范围,即便这些变量在 if 语句、while 语句和 for 语句中定义,也是如此。例如,下面的代码会重新声明变量 x 两次: function test() {
var x:Number = 10;
if (true) {
for (var x=0; x < 5; x++) // 此处将出现警告,这是 x 的第二次定义
trace(x);
}
trace(x); // 是 5,而不是 10。由上面的 for 循环设置的最后一个值是 x 的当前值
}
3598 定义的名称和已导入的包的名称相同。如果不加限定地引用该名称,则该名称将被解析为包而不是定义。
3599 定义的名称和已导入的包的名称相同。如果不加限定地引用该名称,则该名称将被解析为包而不是定义。 如果某定义的名称与范围内的包相同,则对该名称的任何非限定引用都将解析为该包,而不是解析为该定义。这会在尝试引用该变量时导致意外的错误。为此,必须限定对该定义的所有引用,以便将其解析为该定义,而不是解析为该包。
3600 可能试图删除固定属性。
3601 不能删除声明属性 _。若要释放相关内存,请将其值设置为 null。 delete 会从对象中动态删除定义的属性。不能删除类的声明属性,该操作将失败且无任何提示。若要释放此变量的相关内存,请将其值设置为 null。
2007
12-23
以下是编译器遇到无效代码时生成的编译错误列表。只有在严谨模式下编译代码时,才能检测到这些错误的子集。严谨模式添加了标准语言中没有的三种约束: 表达式有静态类型,且类型错误为验证错误。
附加验证规则捕获常见编程错误。
提前报告验证错误。以下验证错误仅在严谨模式下出现:
函数调用签名匹配,将检查所提供的参数数目及其类型。
重复定义冲突。
访问编译时未定义的方法或属性时出现未绑定的引用。
在密封对象上动态添加属性。
写入常量变量。
删除固定属性。
比较使用不兼容类型的表达式。
未找到包。 代码 消息 说明
1000 对 _ 的引用不明确。 引用可能指向多项。例如,下面使用了 rss 和 xml 命名空间。每个命名空间为 hello() 函数定义了不同的值。trace(hello()) 语句返回此错误,因为它无法确定使用哪个命名空间。private namespace rss;
private namespace xml;
public function ErrorExamples() {
use namespace rss;
use namespace xml;
trace(hello());
}
rss function hello():String {
return "hola";
}
xml function hello():String {
return "foo";
}通过使用具体的引用来纠正不明确的引用。下面的示例 使用 namespace::function 这种格式指定所要使用的命名空间: public function ErrorExamples() {
trace(rss::hello());
trace(xml::hello());
}
1003 不允许将访问说明符与命名空间属性结合使用。 不能在定义中同时使用访问说明符(如私有或公共)和命名空间属性。
1004 找不到命名空间,或者命名空间不是编译时常量。 该命名空间未知,或是运行时可能具有不同值的表达式。检查命名空间的拼写及其定义的导入是否正确。
1006 super 表达式只能在类实例方法的内部使用。
1007 super 语句只能在类实例构造函数的内部使用。 不能在静态成员的内部使用 super 语句。只能在类实例的内部使用 super 语句。
1008 属性无效。
1010 override 属性只能在类的属性定义中使用。 不能在函数块的内部使用 override 关键字。
1011 virtual 属性只能在类的属性定义中使用。 声明的属性不属于某个类时(例如在函数块的内部声明某个变量时),不能使用 virtual 属性。
1012 static 属性只能在类内部的定义中使用。
1013 private 属性只能在类的属性定义中使用。
1014 不再支持 intrinsic 属性。 ActionScript 3.0 does not support the intrinsic keyword.
1016 基类为 final 类。 无法扩展超类,因为它标记为 final。
1017 找不到基类 _ 的定义。
1018 类的定义 _ 重复。
1020 标记为 override 的方法必须覆盖其它方法。
1021 函数的定义重复。 在同一个范围内,不能使用相同的标识符名称声明多个函数。
1022 不能覆盖 final 存取器。
1023 覆盖不兼容。 标记为 override 的函数必须与所要覆盖的函数的参数和返回类型声明完全匹配。它必须具有相同数量的参数,且每个参数的类型相同,还必须声明相同的返回类型。如果任何一个参数是可选的,该函数也必须与此参数匹配。这两个函数还必须使用相同的访问说明符(如公共和私有等)或命名空间属性。
1024 覆盖没有标记为 override 的函数。 如果某个类中的方法覆盖基类中的方法,则必须使用 override 属性对其进行显式声明,如下面的示例所示:
public override function foo():void{};
1025 不能重新定义 final 方法。 不能扩展该方法,因为它在基类中标记为 final。
1026 构造函数必须是实例方法。
1027 函数不能同时为 static 和 override 函数。
1028 函数不能同时为 static 和 virtual 函数。
1029 函数不能同时为 final 和 virtual 函数。
1030 必须指定变量参数数组的名称。 ...(rest) 参数定义指定:...(rest) 之后提供的所有值都收集到任一数组中。必须指定该数组的名称,如 function foo(x,...(rest)) 表达式中所示。
1033 不支持 virtual 变量。
1034 变量不能是 native。
1035 变量不能同时为 final 和 virtual。
1037 不能嵌套包。
1038 找不到 break 语句的目标。
1039 找不到 continue 语句的目标。
1040 标签的定义重复。
1041 属性是不可调用的。
1042 this 关键字不能在 static 方法中使用。它只能在实例方法、函数闭包和全局代码中使用。 不能在静态成员的内部使用 this 关键字,因为 this 可能没有上下文。
1043 命名空间未定义。
1044 接口方法 _(属于命名空间 _)未经类 _ 实现。
1045 找不到接口 _。
1046 找不到类型,或者类型不是编译时常量 _。 用作类型声明的类未知,或是运行时可能具有不同值的表达式。检查导入的类是否正确以及该类的包位置是否尚未更改。此外,检查包含代码的包(不是导入的类)是否正确定义(例如,确保使用正确的 ActionScript 3.0 包语法,而不是 ActionScript 2.0 包语法)。如果所要引用的类没有在使用的命名空间中定义或未定义为公共,也会出现该错误:public class Foo{}如果正在使用 Flex™ Builder™ 2 并且该类存在于库中,请确保为项目设置类路径。
1047 参数的初始值未知,或不是编译时常量。 用作该参数默认值的值未定义或在运行时可能具有不同的值。检查初始值设定项的拼写是否正确,以及初始值设定项的值是不是一个会在运行时导致产生不同值的表达式。
1048 方法不能用作构造函数。 不能创建类方法的实例。只有全局函数才能在 new 表达式中使用。
class D { function xx() { return 22; } }
var d:D = new D();
var x = new d.xx(); // 错误,方法不能用作构造函数
function yy() { this.a = 22; }
var z = new yy(); // 无错误,全局函数可以用作构造函数。
1049 对指定为常量的变量的赋值非法。
1050 不能赋给非引用值。
1051 返回值必须是 undefined。 正在试图在声明了 void 返回类型的方法中使用 return 语句。
1052 常量的初始值未知,或不是编译时常量。 用来初始化该常量的值是 undefined,或在运行时可能具有不同的值。检查初始值设定项的拼写是否正确,以及初始值设定项的值是不是一个会在运行时导致产生不同值的表达式。
1053 存取器类型必须匹配。
1054 setter 定义的返回类型必须是 unspecified 或 void。 不能为 setter 函数指定返回值。例如,下面的语句无效:
public function set gamma(g:Number):Number;下面的语句是 有效的:public function set gamma(g:Number):void;
1058 属性是只写的。
1059 属性是只读的。 此属性通过 getter 函数定义,因此,可以检索该属性的值。但是,不存在为此属性定义的 setter 函数,因此,该属性是只读的。
在下面的示例中,第 3 行会生成错误,因为不存在为 xx 定义的 setter 函数: class D { function get xx() { return 22; } }
var d:D = new D();
d.xx = 44; // 错误,属性是只读的
1061 调用可能未定义的方法 _(通过静态类型为 _ 的引用来调用)。 所要调用的方法未定义。
1063 无法打开文件 _。
1064 元数据无效。 无法识别此元数据。
1065 元数据的属性不能包含多个元素。
1067 将 _ 类型的值隐式强制为无关 _ 类型。 正在试图将对象转换为无法转换成的类型。如果所要转换的类不在正在转换的对象继承链中,可能会出现这种情况。仅当编译器在严格模式下运行时,才会出现这种错误。
1068 无法打开包含的文件 _。
1069 语法错误:应有定义或指令。 Check the syntax in the line.
1071 语法错误:定义关键字(如 function)应在属性 _ 之后,而不是 _ 之后。 如果作者忘记在声明中使用“var”和“function”关键字,将会出现此错误。
public int z;// 应为“public var z:int;”编译器遇到意外字符时,也会出现此错误。例如,由于缺少括号,下面使用的 trace() 函数无效(正确的语法是 trace("hello")):
import flash.utils.trace;
trace "hello"
1072 语法错误:命名空间之前应有 xml。 正确的语句语法是 default xml namespace = ns。或者缺少关键字 xml(注意小写),或者使用了错误的关键字。有关详细信息,请参阅默认的 xml 命名空间指令。
1073 语法错误:应有 catch 或 finally 子句。
1075 语法错误:如果没有“in”运算符,则不允许使用“each”关键字。
1076 语法错误:标识符之前应有左括号。
1077 应有 CaseLabel。 在 switch 块中,编译器此时应该执行 case 语句。下面的 switch 块错误地在第一个 case 语句之前包含对 print 的调用:
switch(x)
{
trace(2);
case 0: trace(0);
break
}
1078 标签必须是一个简单的标识符。
1079 super 表达式必须具有一个操作数。
1080 应有递增或递减运算符。
1082 括号内应有一个表达式。
1083 语法错误:遇到意外的 _。 代码行缺少某些信息。在下面的示例中,最后一个加号的后面必须带有某个表达式(如其它数字):
var sum:int = 1 + 2 + ;
1084 语法错误:应有 _(_ 之前)。 此处不需要该表达式。如果错误是“程序结束之前应有右括号”,则表示代码块缺少右大括号 (})。
如果错误是“_ 之前应有左括号”,则表示条件表达式中可能遗漏括号,如下面的示例(有意出错)所示: var fact:int = 1 * 2 * 3;
if fact > 2 {
var bigger:Boolean = true;
}
1086 语法错误:_ 之前应有分号。
1087 语法错误:程序结束之后找到额外的字符。
1093 语法错误。
1094 语法错误:字符串文字必须在换行符之前终止。
1095 语法错误:字符串文字必须在换行符之前终止。
1097 语法错误:输入已在到达字符串文字的右引号之前结束。
1099 语法错误。
1100 语法错误:XML 没有匹配的开始和结束标签。
1102 不能删除超级后代。
1103 命名空间的定义重复。 已多次定义该命名空间。请删除或修改重复的定义。
1105 赋值的目标必须是引用值。 可以给变量赋值,但是不能将一个值赋给另外一个值。
1106 递增操作数必须是引用。 操作数必须是变量、数组中的元素或对象的属性。
1107 递增操作数无效。 操作数必须是变量、数组中的元素或对象的属性。
1108 递减操作数无效。 操作数必须是变量、数组中的元素或对象的属性。
1109 应有表达式。 代码的一部分缺少表达式。例如,下面的代码会生成此错误(if 语句中缺少某项条件):
var x = (5 > 2) ?
trace(x)
1110 缺少 XML 标签名称。
1112 可能会出现无限递归问题,因为此文件包含 _。 所要编译的源代码中包含的某文件中包含可能导致无限循环的其它 include 语句。例如,下面的 a.as 和 b.as 文件会生成此错误,因为每个文件都试图包含另外一个文件。
文件 a.as 中包含以下代码,它试图包含文件 b.as: import foo.bar.baz;
include "b.as"
trace(2);文件 b.as 包含以下代码,它试图包含文件 a.as: include "a.as"
1113 在 _ 中检测到循环类型引用。 类正在尝试扩展超类。例如,如果类 B 从类 A 继承而来,则 A 不能扩展 B:
class a extends b { }
class b extends a { }
1114 public 属性只能在包的内部使用。
1115 internal 属性只能在包的内部使用。
1116 用户定义的命名空间属性只能在顶级的类定义中使用。
1118 将静态类型为 _ 的值隐式强制为可能无关的类型 _。 所要使用的值不是预期的类型,不存在将其转换为预期类型的隐式强制。
可能使用的是超级类型,但需要的是子类型。例如: class A {}
var a:A = new A();
class B extends A { function f() }
var b : B = a // 错误最后一个语句会出错,因为该语句尝试将类型 A 的对象赋给类型 B 的变量。 同样,下面定义的 foo() 函数采用了类型为 B 的参数。语句 foo(a); 会出错,因为该语句试图使用类型为 A 的参数: function foo(x:B) { }
foo(a);此外,下面的语句也会出错,因为 foo2() 的返回值必须为类型 B: function foo2():B { return new A(); }
1119 访问可能未定义的属性 _(通过静态类型为 _ 的引用来访问)。 正在尝试访问的属性对于指定对象不存在。例如,下面的代码会生成此错误,因为 int 对象没有名为 assortment 的属性:
var i:int = 44;
var str:String = i.assortment;仅当编译器在严格模式下运行时,才会出现这种错误。
1120 访问未定义的属性 _。 正在试图访问未定义的变量。例如,如果尚未定义变量 huh,调用该变量时会生成此错误:
huh = 55;只有编译器在严格模式下运行时,才会出现此错误。
1121 getter 定义不能包含参数。
1122 setter 定义只能包含一个参数。
1123 setter 定义不能包含可选参数。
1124 getter 定义的返回类型不能为 void。 getter 函数模拟变量。由于变量类型不能为 void,因此不能将 getter 函数声明为返回类型 void。
1125 接口中定义的方法不能包含方法体。
1126 函数没有函数体。
1127 已多次指定属性 _。 在同一语句中多次指定了某个属性。例如,语句 public static public var x; 会生成此错误,因为该语句两次指定变量 x 是公共变量。请删除重复的声明。
1129 接口的定义 _ 重复。 请更改或删除重复的定义。
1130 构造函数不能指定返回类型。
1131 不能嵌套类。
1132 final 属性只能在类中定义的方法内使用。
1133 native 属性只能与函数定义结合使用。
1134 dynamic 属性只能与类定义结合使用。
1135 语法错误:_ 不是有效类型。
1136 参数数目不正确。数目应为 _。 函数需要的参数数目与提供的参数数目不同。例如, 下面定义的函数 goo 具有两个参数:
class A { static function goo(x:int,y:int)
{ return(x+y); } }下面的语句可能会出错,因为该语句提供了三个参数: A.goo(1,2,3);
1137 参数数目不正确。不应超过 _ 个。
1138 可选参数之后不允许有必需的参数。
1139 不允许在接口中声明变量。
1140 如果参数是在 ...rest 参数定义关键字之后指定的,则只能是 Array 数据类型。
1141 一个类只能扩展另外一个类,而不能扩展接口。
1142 一个接口只能扩展另外一个接口,但 _ 是一个类。 正在试图使用接口扩展类。一个接口只能扩展另外一个 接口。
1143 override 属性只能在类中定义的方法内使用。
1144 接口方法 _(属于命名空间 _)使用类 _ 中不兼容的签名进行实现。 方法签名必须完全匹配。
1145 Native 方法不能包含方法体。 不能使用 native,因为它是一个保留关键字。
1146 构造函数不能是 getter 或 setter 方法。
1147 未指定 AS 源文件。
1149 return 语句不能在静态初始化代码中使用。
1150 protected 属性只能在类的属性定义中使用。
1151 定义 _(属于命名空间 _)存在冲突。 在同一个范围内,不能使用相同的标识符名称声明多个变量,除非所有这些变量都声明为相同的类型。在 ActionScript 3.0 中,不同的代码 块(例如在同一个函数定义中的两个 for 循环中使用的块) 视为属于同一个范围。
下面的代码示例可以正确地将变量 x 转换为相同类型: function test()
{
var x:int = 3;
for(var x:int = 33; x < 55; x++)
trace(x);
for(var x:int = 11; x < 33; x++)
trace(x)
}下面的代码示例会生成错误,因为变量声明和 for 循环中的类型转换是不同的: function test()
{
var x:String = "The answer is";
for(var x:int = 33; x < 55; x++) // 错误
trace(x);
for(var x:unit = 11; x < 33; x++) // 错误
trace(x)
}
1152 继承的定义 _(属于命名空间 _)存在冲突。
1153 只能将构造函数声明为公共函数。
1154 只能在定义中指定 public、private、protected 或 internal 之一。
1155 不能在其它函数的内部嵌套存取器。
1156 不能使用新运算符实例化接口。
1157 接口成员不能声明为 public、private、protected 或 internal。
1158 语法错误:函数体之前缺少左大括号 ({)。
1159 return 语句不能在包的初始化代码中使用。
1160 native 属性不能在接口定义中使用。 不能使用 native,因为它是一个保留关键字。
1162 每个定义中只能使用一个命名空间属性。
1163 方法 _ 与从接口 _ 继承的定义冲突。
1165 接口属性 _ 无效。
1166 Namespace declarations are not permitted in interfaces.
1167 类 _ 多次实现接口 _。 该类多次实现同一个接口。例如,下面的示例会生成此错误,因为类 C 两次实现接口 A:
interface A { public function f(); };
class C implements A,A {
public function f() { trace("f"); }
}正确的实现语句应为 class C implements A {。
1168 Illegal assignment to function _. 正在试图重新定义函数。例如,下面定义的函数 topLevel() 要输出“top”一词。第二个语句会生成错误,因为该语句赋给该函数不同的返回值:
function topLevel() { trace("top"); }
topLevel = function() { trace("replacement works in ~");} // 错误
1169 不允许在接口方法中使用命名空间属性。
1170 函数没有返回值。 如果返回类型不是 void,函数中每个可能的控制流都必须返回值。下面的函数 f(x) 不会生成错误,因为 if..else 语句总是返回值:
function f(x):int
{
if (x)
return 2;
else
return 3;
} // 无错误但是,下面的函数 g(x) 会生成该错误,因为 switch 语句并非总是返回值。 function g(x:int):int
{
switch(x)
{
case 1: return 1;
case 2: return 2:
}
// return 2;//取消注释可清除该错误
}只有函数声明的返回类型不是 void 时,才启用此检查。
1171 命名空间初始值必须是文字字符串或其它命名空间。
1172 找不到定义 _。
1173 标签定义无效。
1176 将静态类型为 _ 的值与可能无关的类型 _ 进行了比较。 在严格模式下会生成此错误。
1177 return 语句不能在全局初始化代码中使用。
1178 尝试访问不可访问的属性 _(通过静态类型为 _ 的引用)。
1180 调用可能未定义的方法 _。 仅当编译器在严格模式下运行时,才会出现这种错误。
1181 转发对基类 _ 的引用。
1182 包不能用作值 _。
1184 使用了类型 _ 的不兼容默认值,但是应为 _。
1185 switch 包含多个默认值,但是只能使用一个默认值。
1188 对类 _ 的赋值非法。
1189 试图删除固定属性 _。只能删除动态定义的属性。 delete 会从对象中动态删除定义的属性。不能删除类的声明属性。仅当编译器在严格模式下运行时,才会出现这种错误。
1190 找不到基类,或基类不是编译时常量。
1191 找不到接口,或接口不是编译时常量。
1192 不允许在命名空间定义中使用 static 属性。
1193 不能在类或其它接口定义中嵌套接口定义。
1194 prototype 属性无效。
1195 试图访问不可访问的方法 _(通过静态类型为 _ 的引用)。 要么从其它类调用 private 方法,要么调用未使用的命名空间中定义的方法。如果调用的是未使用的命名空间中定义的方法,请为必需的命名空间添加 use 语句。
1196 语法错误:throw 之后应有表达式。
1197 类 _ 不能扩展 _,因为二者都与库符号或主时间轴关联。
1198 不允许在包的定义中使用属性。
1199 内部错误:_。
1200 语法错误:for-in 初始值无效,只能有 1 个表达式。
1201 this、super、return 或 throw 语句之后不能出现 super 语句。
1202 访问未定义的属性 _(属于包 _)。 正在试图访问包中未定义的变量。例如,如果尚未定义变量 p.huh,调用该变量时会生成此错误:
p.huh = 55;仅当编译器在严格模式下运行时,才会出现此错误。
1203 在基类 _ 中未找到默认构造函数。 如果有 1 个或多个必选参数,则必须使用 super() 语句显式调用基类的构造函数。
1204 /* 无对应匹配项 */ . 发现了指示注释开始位置的字符“/*”,但未发现指示注释块结束位置的对应字符“*/”。
附加验证规则捕获常见编程错误。
提前报告验证错误。以下验证错误仅在严谨模式下出现:
函数调用签名匹配,将检查所提供的参数数目及其类型。
重复定义冲突。
访问编译时未定义的方法或属性时出现未绑定的引用。
在密封对象上动态添加属性。
写入常量变量。
删除固定属性。
比较使用不兼容类型的表达式。
未找到包。 代码 消息 说明
1000 对 _ 的引用不明确。 引用可能指向多项。例如,下面使用了 rss 和 xml 命名空间。每个命名空间为 hello() 函数定义了不同的值。trace(hello()) 语句返回此错误,因为它无法确定使用哪个命名空间。private namespace rss;
private namespace xml;
public function ErrorExamples() {
use namespace rss;
use namespace xml;
trace(hello());
}
rss function hello():String {
return "hola";
}
xml function hello():String {
return "foo";
}通过使用具体的引用来纠正不明确的引用。下面的示例 使用 namespace::function 这种格式指定所要使用的命名空间: public function ErrorExamples() {
trace(rss::hello());
trace(xml::hello());
}
1003 不允许将访问说明符与命名空间属性结合使用。 不能在定义中同时使用访问说明符(如私有或公共)和命名空间属性。
1004 找不到命名空间,或者命名空间不是编译时常量。 该命名空间未知,或是运行时可能具有不同值的表达式。检查命名空间的拼写及其定义的导入是否正确。
1006 super 表达式只能在类实例方法的内部使用。
1007 super 语句只能在类实例构造函数的内部使用。 不能在静态成员的内部使用 super 语句。只能在类实例的内部使用 super 语句。
1008 属性无效。
1010 override 属性只能在类的属性定义中使用。 不能在函数块的内部使用 override 关键字。
1011 virtual 属性只能在类的属性定义中使用。 声明的属性不属于某个类时(例如在函数块的内部声明某个变量时),不能使用 virtual 属性。
1012 static 属性只能在类内部的定义中使用。
1013 private 属性只能在类的属性定义中使用。
1014 不再支持 intrinsic 属性。 ActionScript 3.0 does not support the intrinsic keyword.
1016 基类为 final 类。 无法扩展超类,因为它标记为 final。
1017 找不到基类 _ 的定义。
1018 类的定义 _ 重复。
1020 标记为 override 的方法必须覆盖其它方法。
1021 函数的定义重复。 在同一个范围内,不能使用相同的标识符名称声明多个函数。
1022 不能覆盖 final 存取器。
1023 覆盖不兼容。 标记为 override 的函数必须与所要覆盖的函数的参数和返回类型声明完全匹配。它必须具有相同数量的参数,且每个参数的类型相同,还必须声明相同的返回类型。如果任何一个参数是可选的,该函数也必须与此参数匹配。这两个函数还必须使用相同的访问说明符(如公共和私有等)或命名空间属性。
1024 覆盖没有标记为 override 的函数。 如果某个类中的方法覆盖基类中的方法,则必须使用 override 属性对其进行显式声明,如下面的示例所示:
public override function foo():void{};
1025 不能重新定义 final 方法。 不能扩展该方法,因为它在基类中标记为 final。
1026 构造函数必须是实例方法。
1027 函数不能同时为 static 和 override 函数。
1028 函数不能同时为 static 和 virtual 函数。
1029 函数不能同时为 final 和 virtual 函数。
1030 必须指定变量参数数组的名称。 ...(rest) 参数定义指定:...(rest) 之后提供的所有值都收集到任一数组中。必须指定该数组的名称,如 function foo(x,...(rest)) 表达式中所示。
1033 不支持 virtual 变量。
1034 变量不能是 native。
1035 变量不能同时为 final 和 virtual。
1037 不能嵌套包。
1038 找不到 break 语句的目标。
1039 找不到 continue 语句的目标。
1040 标签的定义重复。
1041 属性是不可调用的。
1042 this 关键字不能在 static 方法中使用。它只能在实例方法、函数闭包和全局代码中使用。 不能在静态成员的内部使用 this 关键字,因为 this 可能没有上下文。
1043 命名空间未定义。
1044 接口方法 _(属于命名空间 _)未经类 _ 实现。
1045 找不到接口 _。
1046 找不到类型,或者类型不是编译时常量 _。 用作类型声明的类未知,或是运行时可能具有不同值的表达式。检查导入的类是否正确以及该类的包位置是否尚未更改。此外,检查包含代码的包(不是导入的类)是否正确定义(例如,确保使用正确的 ActionScript 3.0 包语法,而不是 ActionScript 2.0 包语法)。如果所要引用的类没有在使用的命名空间中定义或未定义为公共,也会出现该错误:public class Foo{}如果正在使用 Flex™ Builder™ 2 并且该类存在于库中,请确保为项目设置类路径。
1047 参数的初始值未知,或不是编译时常量。 用作该参数默认值的值未定义或在运行时可能具有不同的值。检查初始值设定项的拼写是否正确,以及初始值设定项的值是不是一个会在运行时导致产生不同值的表达式。
1048 方法不能用作构造函数。 不能创建类方法的实例。只有全局函数才能在 new 表达式中使用。
class D { function xx() { return 22; } }
var d:D = new D();
var x = new d.xx(); // 错误,方法不能用作构造函数
function yy() { this.a = 22; }
var z = new yy(); // 无错误,全局函数可以用作构造函数。
1049 对指定为常量的变量的赋值非法。
1050 不能赋给非引用值。
1051 返回值必须是 undefined。 正在试图在声明了 void 返回类型的方法中使用 return 语句。
1052 常量的初始值未知,或不是编译时常量。 用来初始化该常量的值是 undefined,或在运行时可能具有不同的值。检查初始值设定项的拼写是否正确,以及初始值设定项的值是不是一个会在运行时导致产生不同值的表达式。
1053 存取器类型必须匹配。
1054 setter 定义的返回类型必须是 unspecified 或 void。 不能为 setter 函数指定返回值。例如,下面的语句无效:
public function set gamma(g:Number):Number;下面的语句是 有效的:public function set gamma(g:Number):void;
1058 属性是只写的。
1059 属性是只读的。 此属性通过 getter 函数定义,因此,可以检索该属性的值。但是,不存在为此属性定义的 setter 函数,因此,该属性是只读的。
在下面的示例中,第 3 行会生成错误,因为不存在为 xx 定义的 setter 函数: class D { function get xx() { return 22; } }
var d:D = new D();
d.xx = 44; // 错误,属性是只读的
1061 调用可能未定义的方法 _(通过静态类型为 _ 的引用来调用)。 所要调用的方法未定义。
1063 无法打开文件 _。
1064 元数据无效。 无法识别此元数据。
1065 元数据的属性不能包含多个元素。
1067 将 _ 类型的值隐式强制为无关 _ 类型。 正在试图将对象转换为无法转换成的类型。如果所要转换的类不在正在转换的对象继承链中,可能会出现这种情况。仅当编译器在严格模式下运行时,才会出现这种错误。
1068 无法打开包含的文件 _。
1069 语法错误:应有定义或指令。 Check the syntax in the line.
1071 语法错误:定义关键字(如 function)应在属性 _ 之后,而不是 _ 之后。 如果作者忘记在声明中使用“var”和“function”关键字,将会出现此错误。
public int z;// 应为“public var z:int;”编译器遇到意外字符时,也会出现此错误。例如,由于缺少括号,下面使用的 trace() 函数无效(正确的语法是 trace("hello")):
import flash.utils.trace;
trace "hello"
1072 语法错误:命名空间之前应有 xml。 正确的语句语法是 default xml namespace = ns。或者缺少关键字 xml(注意小写),或者使用了错误的关键字。有关详细信息,请参阅默认的 xml 命名空间指令。
1073 语法错误:应有 catch 或 finally 子句。
1075 语法错误:如果没有“in”运算符,则不允许使用“each”关键字。
1076 语法错误:标识符之前应有左括号。
1077 应有 CaseLabel。 在 switch 块中,编译器此时应该执行 case 语句。下面的 switch 块错误地在第一个 case 语句之前包含对 print 的调用:
switch(x)
{
trace(2);
case 0: trace(0);
break
}
1078 标签必须是一个简单的标识符。
1079 super 表达式必须具有一个操作数。
1080 应有递增或递减运算符。
1082 括号内应有一个表达式。
1083 语法错误:遇到意外的 _。 代码行缺少某些信息。在下面的示例中,最后一个加号的后面必须带有某个表达式(如其它数字):
var sum:int = 1 + 2 + ;
1084 语法错误:应有 _(_ 之前)。 此处不需要该表达式。如果错误是“程序结束之前应有右括号”,则表示代码块缺少右大括号 (})。
如果错误是“_ 之前应有左括号”,则表示条件表达式中可能遗漏括号,如下面的示例(有意出错)所示: var fact:int = 1 * 2 * 3;
if fact > 2 {
var bigger:Boolean = true;
}
1086 语法错误:_ 之前应有分号。
1087 语法错误:程序结束之后找到额外的字符。
1093 语法错误。
1094 语法错误:字符串文字必须在换行符之前终止。
1095 语法错误:字符串文字必须在换行符之前终止。
1097 语法错误:输入已在到达字符串文字的右引号之前结束。
1099 语法错误。
1100 语法错误:XML 没有匹配的开始和结束标签。
1102 不能删除超级后代。
1103 命名空间的定义重复。 已多次定义该命名空间。请删除或修改重复的定义。
1105 赋值的目标必须是引用值。 可以给变量赋值,但是不能将一个值赋给另外一个值。
1106 递增操作数必须是引用。 操作数必须是变量、数组中的元素或对象的属性。
1107 递增操作数无效。 操作数必须是变量、数组中的元素或对象的属性。
1108 递减操作数无效。 操作数必须是变量、数组中的元素或对象的属性。
1109 应有表达式。 代码的一部分缺少表达式。例如,下面的代码会生成此错误(if 语句中缺少某项条件):
var x = (5 > 2) ?
trace(x)
1110 缺少 XML 标签名称。
1112 可能会出现无限递归问题,因为此文件包含 _。 所要编译的源代码中包含的某文件中包含可能导致无限循环的其它 include 语句。例如,下面的 a.as 和 b.as 文件会生成此错误,因为每个文件都试图包含另外一个文件。
文件 a.as 中包含以下代码,它试图包含文件 b.as: import foo.bar.baz;
include "b.as"
trace(2);文件 b.as 包含以下代码,它试图包含文件 a.as: include "a.as"
1113 在 _ 中检测到循环类型引用。 类正在尝试扩展超类。例如,如果类 B 从类 A 继承而来,则 A 不能扩展 B:
class a extends b { }
class b extends a { }
1114 public 属性只能在包的内部使用。
1115 internal 属性只能在包的内部使用。
1116 用户定义的命名空间属性只能在顶级的类定义中使用。
1118 将静态类型为 _ 的值隐式强制为可能无关的类型 _。 所要使用的值不是预期的类型,不存在将其转换为预期类型的隐式强制。
可能使用的是超级类型,但需要的是子类型。例如: class A {}
var a:A = new A();
class B extends A { function f() }
var b : B = a // 错误最后一个语句会出错,因为该语句尝试将类型 A 的对象赋给类型 B 的变量。 同样,下面定义的 foo() 函数采用了类型为 B 的参数。语句 foo(a); 会出错,因为该语句试图使用类型为 A 的参数: function foo(x:B) { }
foo(a);此外,下面的语句也会出错,因为 foo2() 的返回值必须为类型 B: function foo2():B { return new A(); }
1119 访问可能未定义的属性 _(通过静态类型为 _ 的引用来访问)。 正在尝试访问的属性对于指定对象不存在。例如,下面的代码会生成此错误,因为 int 对象没有名为 assortment 的属性:
var i:int = 44;
var str:String = i.assortment;仅当编译器在严格模式下运行时,才会出现这种错误。
1120 访问未定义的属性 _。 正在试图访问未定义的变量。例如,如果尚未定义变量 huh,调用该变量时会生成此错误:
huh = 55;只有编译器在严格模式下运行时,才会出现此错误。
1121 getter 定义不能包含参数。
1122 setter 定义只能包含一个参数。
1123 setter 定义不能包含可选参数。
1124 getter 定义的返回类型不能为 void。 getter 函数模拟变量。由于变量类型不能为 void,因此不能将 getter 函数声明为返回类型 void。
1125 接口中定义的方法不能包含方法体。
1126 函数没有函数体。
1127 已多次指定属性 _。 在同一语句中多次指定了某个属性。例如,语句 public static public var x; 会生成此错误,因为该语句两次指定变量 x 是公共变量。请删除重复的声明。
1129 接口的定义 _ 重复。 请更改或删除重复的定义。
1130 构造函数不能指定返回类型。
1131 不能嵌套类。
1132 final 属性只能在类中定义的方法内使用。
1133 native 属性只能与函数定义结合使用。
1134 dynamic 属性只能与类定义结合使用。
1135 语法错误:_ 不是有效类型。
1136 参数数目不正确。数目应为 _。 函数需要的参数数目与提供的参数数目不同。例如, 下面定义的函数 goo 具有两个参数:
class A { static function goo(x:int,y:int)
{ return(x+y); } }下面的语句可能会出错,因为该语句提供了三个参数: A.goo(1,2,3);
1137 参数数目不正确。不应超过 _ 个。
1138 可选参数之后不允许有必需的参数。
1139 不允许在接口中声明变量。
1140 如果参数是在 ...rest 参数定义关键字之后指定的,则只能是 Array 数据类型。
1141 一个类只能扩展另外一个类,而不能扩展接口。
1142 一个接口只能扩展另外一个接口,但 _ 是一个类。 正在试图使用接口扩展类。一个接口只能扩展另外一个 接口。
1143 override 属性只能在类中定义的方法内使用。
1144 接口方法 _(属于命名空间 _)使用类 _ 中不兼容的签名进行实现。 方法签名必须完全匹配。
1145 Native 方法不能包含方法体。 不能使用 native,因为它是一个保留关键字。
1146 构造函数不能是 getter 或 setter 方法。
1147 未指定 AS 源文件。
1149 return 语句不能在静态初始化代码中使用。
1150 protected 属性只能在类的属性定义中使用。
1151 定义 _(属于命名空间 _)存在冲突。 在同一个范围内,不能使用相同的标识符名称声明多个变量,除非所有这些变量都声明为相同的类型。在 ActionScript 3.0 中,不同的代码 块(例如在同一个函数定义中的两个 for 循环中使用的块) 视为属于同一个范围。
下面的代码示例可以正确地将变量 x 转换为相同类型: function test()
{
var x:int = 3;
for(var x:int = 33; x < 55; x++)
trace(x);
for(var x:int = 11; x < 33; x++)
trace(x)
}下面的代码示例会生成错误,因为变量声明和 for 循环中的类型转换是不同的: function test()
{
var x:String = "The answer is";
for(var x:int = 33; x < 55; x++) // 错误
trace(x);
for(var x:unit = 11; x < 33; x++) // 错误
trace(x)
}
1152 继承的定义 _(属于命名空间 _)存在冲突。
1153 只能将构造函数声明为公共函数。
1154 只能在定义中指定 public、private、protected 或 internal 之一。
1155 不能在其它函数的内部嵌套存取器。
1156 不能使用新运算符实例化接口。
1157 接口成员不能声明为 public、private、protected 或 internal。
1158 语法错误:函数体之前缺少左大括号 ({)。
1159 return 语句不能在包的初始化代码中使用。
1160 native 属性不能在接口定义中使用。 不能使用 native,因为它是一个保留关键字。
1162 每个定义中只能使用一个命名空间属性。
1163 方法 _ 与从接口 _ 继承的定义冲突。
1165 接口属性 _ 无效。
1166 Namespace declarations are not permitted in interfaces.
1167 类 _ 多次实现接口 _。 该类多次实现同一个接口。例如,下面的示例会生成此错误,因为类 C 两次实现接口 A:
interface A { public function f(); };
class C implements A,A {
public function f() { trace("f"); }
}正确的实现语句应为 class C implements A {。
1168 Illegal assignment to function _. 正在试图重新定义函数。例如,下面定义的函数 topLevel() 要输出“top”一词。第二个语句会生成错误,因为该语句赋给该函数不同的返回值:
function topLevel() { trace("top"); }
topLevel = function() { trace("replacement works in ~");} // 错误
1169 不允许在接口方法中使用命名空间属性。
1170 函数没有返回值。 如果返回类型不是 void,函数中每个可能的控制流都必须返回值。下面的函数 f(x) 不会生成错误,因为 if..else 语句总是返回值:
function f(x):int
{
if (x)
return 2;
else
return 3;
} // 无错误但是,下面的函数 g(x) 会生成该错误,因为 switch 语句并非总是返回值。 function g(x:int):int
{
switch(x)
{
case 1: return 1;
case 2: return 2:
}
// return 2;//取消注释可清除该错误
}只有函数声明的返回类型不是 void 时,才启用此检查。
1171 命名空间初始值必须是文字字符串或其它命名空间。
1172 找不到定义 _。
1173 标签定义无效。
1176 将静态类型为 _ 的值与可能无关的类型 _ 进行了比较。 在严格模式下会生成此错误。
1177 return 语句不能在全局初始化代码中使用。
1178 尝试访问不可访问的属性 _(通过静态类型为 _ 的引用)。
1180 调用可能未定义的方法 _。 仅当编译器在严格模式下运行时,才会出现这种错误。
1181 转发对基类 _ 的引用。
1182 包不能用作值 _。
1184 使用了类型 _ 的不兼容默认值,但是应为 _。
1185 switch 包含多个默认值,但是只能使用一个默认值。
1188 对类 _ 的赋值非法。
1189 试图删除固定属性 _。只能删除动态定义的属性。 delete 会从对象中动态删除定义的属性。不能删除类的声明属性。仅当编译器在严格模式下运行时,才会出现这种错误。
1190 找不到基类,或基类不是编译时常量。
1191 找不到接口,或接口不是编译时常量。
1192 不允许在命名空间定义中使用 static 属性。
1193 不能在类或其它接口定义中嵌套接口定义。
1194 prototype 属性无效。
1195 试图访问不可访问的方法 _(通过静态类型为 _ 的引用)。 要么从其它类调用 private 方法,要么调用未使用的命名空间中定义的方法。如果调用的是未使用的命名空间中定义的方法,请为必需的命名空间添加 use 语句。
1196 语法错误:throw 之后应有表达式。
1197 类 _ 不能扩展 _,因为二者都与库符号或主时间轴关联。
1198 不允许在包的定义中使用属性。
1199 内部错误:_。
1200 语法错误:for-in 初始值无效,只能有 1 个表达式。
1201 this、super、return 或 throw 语句之后不能出现 super 语句。
1202 访问未定义的属性 _(属于包 _)。 正在试图访问包中未定义的变量。例如,如果尚未定义变量 p.huh,调用该变量时会生成此错误:
p.huh = 55;仅当编译器在严格模式下运行时,才会出现此错误。
1203 在基类 _ 中未找到默认构造函数。 如果有 1 个或多个必选参数,则必须使用 super() 语句显式调用基类的构造函数。
1204 /* 无对应匹配项 */ . 发现了指示注释开始位置的字符“/*”,但未发现指示注释块结束位置的对应字符“*/”。
2007
12-23
创建型模式
1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory
工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。
2、BUILDER—MM最爱听的就是“我爱你”这句话了,见到不同地方的MM,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到MM我只要按对应的键,它就能够用相应的语言说出“我爱你”这句话了,国外的MM也可以轻松搞掂,这就是我的“我爱你”builder。(这一定比美军在伊拉克用的翻译机好卖)
建造模式:将产品的内部表象和产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象的产品对象。建造模式使得产品内部表象可以独立的变化,客户不必知道产品内部组成的细节。建造模式可以强制实行一种分步骤进行的建造过程。
3、FACTORY METHOD—请MM去麦当劳吃汉堡,不同的MM有不同的口味,要每个都记住是一件烦人的事情,我一般采用Factory Method模式,带着MM到服务员那儿,说“要一个汉堡”,具体要什么样的汉堡呢,让MM直接跟服务员说就行了。
工厂方法模式:核心工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类去做,成为一个抽象工厂角色,仅负责给出具体工厂类必须实现的接口,而不接触哪一个产品类应当被实例化这种细节。
4、PROTOTYPE—跟MM用QQ聊天,一定要说些深情的话语了,我搜集了好多肉麻的情话,需要时只要copy出来放到QQ里面就行了,这就是我的情话prototype了。(100块钱一份,你要不要)
原始模型模式:通过给出一个原型对象来指明所要创建的对象的类型,然后用复制这个原型对象的方法创建出更多同类型的对象。原始模型模式允许动态的增加或减少产品类,产品类不需要非得有任何事先确定的等级结构,原始模型模式适用于任何的等级结构。缺点是每一个类都必须配备一个克隆方法。
5、SINGLETON—俺有6个漂亮的老婆,她们的老公都是我,我就是我们家里的老公Sigleton,她们只要说道“老公”,都是指的同一个人,那就是我(刚才做了个梦啦,哪有这么好的事)
单例模式:单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例单例模式。单例模式只应在有真正的“单一实例”的需求时才可使用。
结构型模式
6、ADAPTER—在朋友聚会上碰到了一个美女Sarah,从香港来的,可我不会说粤语,她不会说普通话,只好求助于我的朋友kent了,他作为我和Sarah之间的Adapter,让我和Sarah可以相互交谈了(也不知道他会不会耍我)
适配器(变压器)模式:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口原因不匹配而无法一起工作的两个类能够一起工作。适配类可以根据参数返还一个合适的实例给客户端。
7、BRIDGE—早上碰到MM,要说早上好,晚上碰到MM,要说晚上好;碰到MM穿了件新衣服,要说你的衣服好漂亮哦,碰到MM新做的发型,要说你的头发好漂亮哦。不要问我“早上碰到MM新做了个发型怎么说”这种问题,自己用BRIDGE组合一下不就行了
桥梁模式:将抽象化与实现化脱耦,使得二者可以独立的变化,也就是说将他们之间的强关联变成弱关联,也就是指在一个软件系统的抽象化和实现化之间使用组合/聚合关系而不是继承关系,从而使两者可以独立的变化。
8、COMPOSITE—Mary今天过生日。“我过生日,你要送我一件礼物。”“嗯,好吧,去商店,你自己挑。”“这件T恤挺漂亮,买,这条裙子好看,买,这个包也不错,买。”“喂,买了三件了呀,我只答应送一件礼物的哦。”“什么呀,T恤加裙子加包包,正好配成一套呀,小姐,麻烦你包起来。”“……”,MM都会用Composite模式了,你会了没有?
合成模式:合成模式将对象组织到树结构中,可以用来描述整体与部分的关系。合成模式就是一个处理对象的树结构的模式。合成模式把部分与整体的关系用树结构表示出来。合成模式使得客户端把一个个单独的成分对象和由他们复合而成的合成对象同等看待。
9、DECORATOR—Mary过完轮到Sarly过生日,还是不要叫她自己挑了,不然这个月伙食费肯定玩完,拿出我去年在华山顶上照的照片,在背面写上“最好的的礼物,就是爱你的Fita”,再到街上礼品店买了个像框(卖礼品的MM也很漂亮哦),再找隔壁搞美术设计的Mike设计了一个漂亮的盒子装起来……,我们都是Decorator,最终都在修饰我这个人呀,怎么样,看懂了吗?
装饰模式:装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案,提供比继承更多的灵活性。动态给一个对象增加功能,这些功能可以再动态的撤消。增加由一些基本功能的排列组合而产生的非常大量的功能。
10、FACADE—我有一个专业的Nikon相机,我就喜欢自己手动调光圈、快门,这样照出来的照片才专业,但MM可不懂这些,教了半天也不会。幸好相机有Facade设计模式,把相机调整到自动档,只要对准目标按快门就行了,一切由相机自动调整,这样MM也可以用这个相机给我拍张照片了。
门面模式:外部与一个子系统的通信必须通过一个统一的门面对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。每一个子系统只有一个门面类,而且此门面类只有一个实例,也就是说它是一个单例模式。但整个系统可以有多个门面类。
11、FLYWEIGHT—每天跟MM发短信,手指都累死了,最近买了个新手机,可以把一些常用的句子存在手机里,要用的时候,直接拿出来,在前面加上MM的名字就可以发送了,再不用一个字一个字敲了。共享的句子就是Flyweight,MM的名字就是提取出来的外部特征,根据上下文情况使用。
享元模式:FLYWEIGHT在拳击比赛中指最轻量级。享元模式以共享的方式高效的支持大量的细粒度对象。享元模式能做到共享的关键是区分内蕴状态和外蕴状态。内蕴状态存储在享元内部,不会随环境的改变而有所不同。外蕴状态是随环境的改变而改变的。外蕴状态不能影响内蕴状态,它们是相互独立的。将可以共享的状态和不可以共享的状态从常规类中区分开来,将不可以共享的状态从类里剔除出去。客户端不可以直接创建被共享的对象,而应当使用一个工厂对象负责创建被共享的对象。享元模式大幅度的降低内存中对象的数量。
12、PROXY—跟MM在网上聊天,一开头总是“hi,你好”,“你从哪儿来呀?”“你多大了?”“身高多少呀?”这些话,真烦人,写个程序做为我的Proxy吧,凡是接收到这些话都设置好了自动的回答,接收到其他的话时再通知我回答,怎么样,酷吧。
代理模式:代理模式给某一个对象提供一个代理对象,并由代理对象控制对源对象的引用。代理就是一个人或一个机构代表另一个人或者一个机构采取行动。某些情况下,客户不想或者不能够直接引用一个对象,代理对象可以在客户和目标对象直接起到中介的作用。客户端分辨不出代理主题对象与真实主题对象。代理模式可以并不知道真正的被代理对象,而仅仅持有一个被代理对象的接口,这时候代理对象不能够创建被代理对象,被代理对象必须有系统的其他角色代为创建并传入。
行为模式
13、CHAIN OF RESPONSIBLEITY—晚上去上英语课,为了好开溜坐到了最后一排,哇,前面坐了好几个漂亮的MM哎,找张纸条,写上“Hi,可以做我的女朋友吗?如果不愿意请向前传”,纸条就一个接一个的传上去了,糟糕,传到第一排的MM把纸条传给老师了,听说是个老处女呀,快跑!
责任链模式:在责任链模式中,很多对象由每一个对象对其下家的引用而接
起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。客户并不知道链上的哪一个对象最终处理这个请求,系统可以在不影响客户端的情况下动态的重新组织链和分配责任。处理者有两个选择:承担责任或者把责任推给下家。一个请求可以最终不被任何接收端对象所接受。
14、COMMAND—俺有一个MM家里管得特别严,没法见面,只好借助于她弟弟在我们俩之间传送信息,她对我有什么指示,就写一张纸条让她弟弟带给我。这不,她弟弟又传送过来一个COMMAND,为了感谢他,我请他吃了碗杂酱面,哪知道他说:“我同时给我姐姐三个男朋友送COMMAND,就数你最小气,才请我吃面。”,:-(
命令模式:命令模式把一个请求或者操作封装到一个对象中。命令模式把发出命令的责任和执行命令的责任分割开,委派给不同的对象。命令模式允许请求的一方和发送的一方独立开来,使得请求的一方不必知道接收请求的一方的接口,更不必知道请求是怎么被接收,以及操作是否执行,何时被执行以及是怎么被执行的。系统支持命令的撤消。
15、INTERPRETER—俺有一个《泡MM真经》,上面有各种泡MM的攻略,比如说去吃西餐的步骤、去看电影的方法等等,跟MM约会时,只要做一个Interpreter,照着上面的脚本执行就可以了。
解释器模式:给定一个语言后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器。客户端可以使用这个解释器来解释这个语言中的句子。解释器模式将描述怎样在有了一个简单的文法后,使用模式设计解释这些语句。在解释器模式里面提到的语言是指任何解释器对象能够解释的任何组合。在解释器模式中需要定义一个代表文法的命令类的等级结构,也就是一系列的组合规则。每一个命令对象都有一个解释方法,代表对命令对象的解释。命令对象的等级结构中的对象的任何排列组合都是一个语言。
16、ITERATOR—我爱上了Mary,不顾一切的向她求婚。
Mary:“想要我跟你结婚,得答应我的条件”
我:“什么条件我都答应,你说吧”
Mary:“我看上了那个一克拉的钻石”
我:“我买,我买,还有吗?”
Mary:“我看上了湖边的那栋别墅”
我:“我买,我买,还有吗?”
Mary:“你的小弟弟必须要有50cm长”
我脑袋嗡的一声,坐在椅子上,一咬牙:“我剪,我剪,还有吗?”
……
迭代子模式:迭代子模式可以顺序访问一个聚集中的元素而不必暴露聚集的内部表象。多个对象聚在一起形成的总体称之为聚集,聚集对象是能够包容一组对象的容器对象。迭代子模式将迭代逻辑封装到一个独立的子对象中,从而与聚集本身隔开。迭代子模式简化了聚集的界面。每一个聚集对象都可以有一个或一个以上的迭代子对象,每一个迭代子的迭代状态可以是彼此独立的。迭代算法可以独立于聚集角色变化。
17、MEDIATOR—四个MM打麻将,相互之间谁应该给谁多少钱算不清楚了,幸亏当时我在旁边,按照各自的筹码数算钱,赚了钱的从我这里拿,赔了钱的也付给我,一切就OK啦,俺得到了四个MM的电话。
调停者模式:调停者模式包装了一系列对象相互作用的方式,使得这些对象不必相互明显作用。从而使他们可以松散偶合。当某些对象之间的作用发生改变时,不会立即影响其他的一些对象之间的作用。保证这些作用可以彼此独立的变化。调停者模式将多对多的相互作用转化为一对多的相互作用。调停者模式将对象的行为和协作抽象化,把对象在小尺度的行为上与其他对象的相互作用分开处理。
18、MEMENTO—同时跟几个MM聊天时,一定要记清楚刚才跟MM说了些什么话,不然MM发现了会不高兴的哦,幸亏我有个备忘录,刚才与哪个MM说了什么话我都拷贝一份放到备忘录里面保存,这样可以随时察看以前的记录啦。
备忘录模式:备忘录对象是一个用来存储另外一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态捉住,并外部化,存储起来,从而可以在将来合适的时候把这个对象还原到存储起来的状态。
19、OBSERVER—想知道咱们公司最新MM情报吗?加入公司的MM情报邮件组就行了,tom负责搜集情报,他发现的新情报不用一个一个通知我们,直接发布给邮件组,我们作为订阅者(观察者)就可以及时收到情报啦
观察者模式:观察者模式定义了一种一队多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使他们能够自动更新自己。
20、STATE—跟MM交往时,一定要注意她的状态哦,在不同的状态时她的行为会有不同,比如你约她今天晚上去看电影,对你没兴趣的MM就会说“有事情啦”,对你不讨厌但还没喜欢上的MM就会说“好啊,不过可以带上我同事么?”,已经喜欢上你的MM就会说“几点钟?看完电影再去泡吧怎么样?”,当然你看电影过程中表现良好的话,也可以把MM的状态从不讨厌不喜欢变成喜欢哦。
状态模式:状态模式允许一个对象在其内部状态改变的时候改变行为。这个对象看上去象是改变了它的类一样。状态模式把所研究的对象的行为包装在不同的状态对象里,每一个状态对象都属于一个抽象状态类的一个子类。状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变。状态模式需要对每一个系统可能取得的状态创立一个状态类的子类。当系统的状态变化时,系统便改变所选的子类。
21、STRATEGY—跟不同类型的MM约会,要用不同的策略,有的请电影比较好,有的则去吃小吃效果不错,有的去海边浪漫最合适,单目的都是为了得到MM的芳心,我的追MM锦囊中有好多Strategy哦。
策略模式:策略模式针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模式把行为和环境分开。环境类负责维持和查询行为类,各种算法在具体的策略类中提供。由于算法和环境独立开来,算法的增减,修改都不会影响到环境和客户端。
22、TEMPLATE METHOD——看过《如何说服女生上床》这部经典文章吗?女生从认识到上床的不变的步骤分为巧遇、打破僵局、展开追求、接吻、前戏、动手、爱抚、进去八大步骤(Template method),但每个步骤针对不同的情况,都有不一样的做法,这就要看你随机应变啦(具体实现);
模板方法模式:模板方法模式准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。先制定一个顶级逻辑框架,而将逻辑的细节留给具体的子类去实现。
23、VISITOR—情人节到了,要给每个MM送一束鲜花和一张卡片,可是每个MM送的花都要针对她个人的特点,每张卡片也要根据个人的特点来挑,我一个人哪搞得清楚,还是找花店老板和礼品店老板做一下Visitor,让花店老板根据MM的特点选一束花,让礼品店老板也根据每个人特点选一张卡,这样就轻松多了;
访问者模式:访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构可以保持不变。访问者模式适用于数据结构相对未定的系统,它把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由的演化。访问者模式使得增加新的操作变的很容易,就是增加一个新的访问者类。访问者模式将有关的行为集中到一个访问者对象中,而不是分散到一个个的节点类中。当使用访问者模式时,要将尽可能多的对象浏览逻辑放在访问者类中,而不是放到它的子类中。访问者模式可以跨过几个类的等级结构访问属于不同的等级结构的成员类。 转帖:http://baike.baidu.com/view/1082055.htm
1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory
工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。
2、BUILDER—MM最爱听的就是“我爱你”这句话了,见到不同地方的MM,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到MM我只要按对应的键,它就能够用相应的语言说出“我爱你”这句话了,国外的MM也可以轻松搞掂,这就是我的“我爱你”builder。(这一定比美军在伊拉克用的翻译机好卖)
建造模式:将产品的内部表象和产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象的产品对象。建造模式使得产品内部表象可以独立的变化,客户不必知道产品内部组成的细节。建造模式可以强制实行一种分步骤进行的建造过程。
3、FACTORY METHOD—请MM去麦当劳吃汉堡,不同的MM有不同的口味,要每个都记住是一件烦人的事情,我一般采用Factory Method模式,带着MM到服务员那儿,说“要一个汉堡”,具体要什么样的汉堡呢,让MM直接跟服务员说就行了。
工厂方法模式:核心工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类去做,成为一个抽象工厂角色,仅负责给出具体工厂类必须实现的接口,而不接触哪一个产品类应当被实例化这种细节。
4、PROTOTYPE—跟MM用QQ聊天,一定要说些深情的话语了,我搜集了好多肉麻的情话,需要时只要copy出来放到QQ里面就行了,这就是我的情话prototype了。(100块钱一份,你要不要)
原始模型模式:通过给出一个原型对象来指明所要创建的对象的类型,然后用复制这个原型对象的方法创建出更多同类型的对象。原始模型模式允许动态的增加或减少产品类,产品类不需要非得有任何事先确定的等级结构,原始模型模式适用于任何的等级结构。缺点是每一个类都必须配备一个克隆方法。
5、SINGLETON—俺有6个漂亮的老婆,她们的老公都是我,我就是我们家里的老公Sigleton,她们只要说道“老公”,都是指的同一个人,那就是我(刚才做了个梦啦,哪有这么好的事)
单例模式:单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例单例模式。单例模式只应在有真正的“单一实例”的需求时才可使用。
结构型模式
6、ADAPTER—在朋友聚会上碰到了一个美女Sarah,从香港来的,可我不会说粤语,她不会说普通话,只好求助于我的朋友kent了,他作为我和Sarah之间的Adapter,让我和Sarah可以相互交谈了(也不知道他会不会耍我)
适配器(变压器)模式:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口原因不匹配而无法一起工作的两个类能够一起工作。适配类可以根据参数返还一个合适的实例给客户端。
7、BRIDGE—早上碰到MM,要说早上好,晚上碰到MM,要说晚上好;碰到MM穿了件新衣服,要说你的衣服好漂亮哦,碰到MM新做的发型,要说你的头发好漂亮哦。不要问我“早上碰到MM新做了个发型怎么说”这种问题,自己用BRIDGE组合一下不就行了
桥梁模式:将抽象化与实现化脱耦,使得二者可以独立的变化,也就是说将他们之间的强关联变成弱关联,也就是指在一个软件系统的抽象化和实现化之间使用组合/聚合关系而不是继承关系,从而使两者可以独立的变化。
8、COMPOSITE—Mary今天过生日。“我过生日,你要送我一件礼物。”“嗯,好吧,去商店,你自己挑。”“这件T恤挺漂亮,买,这条裙子好看,买,这个包也不错,买。”“喂,买了三件了呀,我只答应送一件礼物的哦。”“什么呀,T恤加裙子加包包,正好配成一套呀,小姐,麻烦你包起来。”“……”,MM都会用Composite模式了,你会了没有?
合成模式:合成模式将对象组织到树结构中,可以用来描述整体与部分的关系。合成模式就是一个处理对象的树结构的模式。合成模式把部分与整体的关系用树结构表示出来。合成模式使得客户端把一个个单独的成分对象和由他们复合而成的合成对象同等看待。
9、DECORATOR—Mary过完轮到Sarly过生日,还是不要叫她自己挑了,不然这个月伙食费肯定玩完,拿出我去年在华山顶上照的照片,在背面写上“最好的的礼物,就是爱你的Fita”,再到街上礼品店买了个像框(卖礼品的MM也很漂亮哦),再找隔壁搞美术设计的Mike设计了一个漂亮的盒子装起来……,我们都是Decorator,最终都在修饰我这个人呀,怎么样,看懂了吗?
装饰模式:装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案,提供比继承更多的灵活性。动态给一个对象增加功能,这些功能可以再动态的撤消。增加由一些基本功能的排列组合而产生的非常大量的功能。
10、FACADE—我有一个专业的Nikon相机,我就喜欢自己手动调光圈、快门,这样照出来的照片才专业,但MM可不懂这些,教了半天也不会。幸好相机有Facade设计模式,把相机调整到自动档,只要对准目标按快门就行了,一切由相机自动调整,这样MM也可以用这个相机给我拍张照片了。
门面模式:外部与一个子系统的通信必须通过一个统一的门面对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。每一个子系统只有一个门面类,而且此门面类只有一个实例,也就是说它是一个单例模式。但整个系统可以有多个门面类。
11、FLYWEIGHT—每天跟MM发短信,手指都累死了,最近买了个新手机,可以把一些常用的句子存在手机里,要用的时候,直接拿出来,在前面加上MM的名字就可以发送了,再不用一个字一个字敲了。共享的句子就是Flyweight,MM的名字就是提取出来的外部特征,根据上下文情况使用。
享元模式:FLYWEIGHT在拳击比赛中指最轻量级。享元模式以共享的方式高效的支持大量的细粒度对象。享元模式能做到共享的关键是区分内蕴状态和外蕴状态。内蕴状态存储在享元内部,不会随环境的改变而有所不同。外蕴状态是随环境的改变而改变的。外蕴状态不能影响内蕴状态,它们是相互独立的。将可以共享的状态和不可以共享的状态从常规类中区分开来,将不可以共享的状态从类里剔除出去。客户端不可以直接创建被共享的对象,而应当使用一个工厂对象负责创建被共享的对象。享元模式大幅度的降低内存中对象的数量。
12、PROXY—跟MM在网上聊天,一开头总是“hi,你好”,“你从哪儿来呀?”“你多大了?”“身高多少呀?”这些话,真烦人,写个程序做为我的Proxy吧,凡是接收到这些话都设置好了自动的回答,接收到其他的话时再通知我回答,怎么样,酷吧。
代理模式:代理模式给某一个对象提供一个代理对象,并由代理对象控制对源对象的引用。代理就是一个人或一个机构代表另一个人或者一个机构采取行动。某些情况下,客户不想或者不能够直接引用一个对象,代理对象可以在客户和目标对象直接起到中介的作用。客户端分辨不出代理主题对象与真实主题对象。代理模式可以并不知道真正的被代理对象,而仅仅持有一个被代理对象的接口,这时候代理对象不能够创建被代理对象,被代理对象必须有系统的其他角色代为创建并传入。
行为模式
13、CHAIN OF RESPONSIBLEITY—晚上去上英语课,为了好开溜坐到了最后一排,哇,前面坐了好几个漂亮的MM哎,找张纸条,写上“Hi,可以做我的女朋友吗?如果不愿意请向前传”,纸条就一个接一个的传上去了,糟糕,传到第一排的MM把纸条传给老师了,听说是个老处女呀,快跑!
责任链模式:在责任链模式中,很多对象由每一个对象对其下家的引用而接
起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。客户并不知道链上的哪一个对象最终处理这个请求,系统可以在不影响客户端的情况下动态的重新组织链和分配责任。处理者有两个选择:承担责任或者把责任推给下家。一个请求可以最终不被任何接收端对象所接受。
14、COMMAND—俺有一个MM家里管得特别严,没法见面,只好借助于她弟弟在我们俩之间传送信息,她对我有什么指示,就写一张纸条让她弟弟带给我。这不,她弟弟又传送过来一个COMMAND,为了感谢他,我请他吃了碗杂酱面,哪知道他说:“我同时给我姐姐三个男朋友送COMMAND,就数你最小气,才请我吃面。”,:-(
命令模式:命令模式把一个请求或者操作封装到一个对象中。命令模式把发出命令的责任和执行命令的责任分割开,委派给不同的对象。命令模式允许请求的一方和发送的一方独立开来,使得请求的一方不必知道接收请求的一方的接口,更不必知道请求是怎么被接收,以及操作是否执行,何时被执行以及是怎么被执行的。系统支持命令的撤消。
15、INTERPRETER—俺有一个《泡MM真经》,上面有各种泡MM的攻略,比如说去吃西餐的步骤、去看电影的方法等等,跟MM约会时,只要做一个Interpreter,照着上面的脚本执行就可以了。
解释器模式:给定一个语言后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器。客户端可以使用这个解释器来解释这个语言中的句子。解释器模式将描述怎样在有了一个简单的文法后,使用模式设计解释这些语句。在解释器模式里面提到的语言是指任何解释器对象能够解释的任何组合。在解释器模式中需要定义一个代表文法的命令类的等级结构,也就是一系列的组合规则。每一个命令对象都有一个解释方法,代表对命令对象的解释。命令对象的等级结构中的对象的任何排列组合都是一个语言。
16、ITERATOR—我爱上了Mary,不顾一切的向她求婚。
Mary:“想要我跟你结婚,得答应我的条件”
我:“什么条件我都答应,你说吧”
Mary:“我看上了那个一克拉的钻石”
我:“我买,我买,还有吗?”
Mary:“我看上了湖边的那栋别墅”
我:“我买,我买,还有吗?”
Mary:“你的小弟弟必须要有50cm长”
我脑袋嗡的一声,坐在椅子上,一咬牙:“我剪,我剪,还有吗?”
……
迭代子模式:迭代子模式可以顺序访问一个聚集中的元素而不必暴露聚集的内部表象。多个对象聚在一起形成的总体称之为聚集,聚集对象是能够包容一组对象的容器对象。迭代子模式将迭代逻辑封装到一个独立的子对象中,从而与聚集本身隔开。迭代子模式简化了聚集的界面。每一个聚集对象都可以有一个或一个以上的迭代子对象,每一个迭代子的迭代状态可以是彼此独立的。迭代算法可以独立于聚集角色变化。
17、MEDIATOR—四个MM打麻将,相互之间谁应该给谁多少钱算不清楚了,幸亏当时我在旁边,按照各自的筹码数算钱,赚了钱的从我这里拿,赔了钱的也付给我,一切就OK啦,俺得到了四个MM的电话。
调停者模式:调停者模式包装了一系列对象相互作用的方式,使得这些对象不必相互明显作用。从而使他们可以松散偶合。当某些对象之间的作用发生改变时,不会立即影响其他的一些对象之间的作用。保证这些作用可以彼此独立的变化。调停者模式将多对多的相互作用转化为一对多的相互作用。调停者模式将对象的行为和协作抽象化,把对象在小尺度的行为上与其他对象的相互作用分开处理。
18、MEMENTO—同时跟几个MM聊天时,一定要记清楚刚才跟MM说了些什么话,不然MM发现了会不高兴的哦,幸亏我有个备忘录,刚才与哪个MM说了什么话我都拷贝一份放到备忘录里面保存,这样可以随时察看以前的记录啦。
备忘录模式:备忘录对象是一个用来存储另外一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态捉住,并外部化,存储起来,从而可以在将来合适的时候把这个对象还原到存储起来的状态。
19、OBSERVER—想知道咱们公司最新MM情报吗?加入公司的MM情报邮件组就行了,tom负责搜集情报,他发现的新情报不用一个一个通知我们,直接发布给邮件组,我们作为订阅者(观察者)就可以及时收到情报啦
观察者模式:观察者模式定义了一种一队多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使他们能够自动更新自己。
20、STATE—跟MM交往时,一定要注意她的状态哦,在不同的状态时她的行为会有不同,比如你约她今天晚上去看电影,对你没兴趣的MM就会说“有事情啦”,对你不讨厌但还没喜欢上的MM就会说“好啊,不过可以带上我同事么?”,已经喜欢上你的MM就会说“几点钟?看完电影再去泡吧怎么样?”,当然你看电影过程中表现良好的话,也可以把MM的状态从不讨厌不喜欢变成喜欢哦。
状态模式:状态模式允许一个对象在其内部状态改变的时候改变行为。这个对象看上去象是改变了它的类一样。状态模式把所研究的对象的行为包装在不同的状态对象里,每一个状态对象都属于一个抽象状态类的一个子类。状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变。状态模式需要对每一个系统可能取得的状态创立一个状态类的子类。当系统的状态变化时,系统便改变所选的子类。
21、STRATEGY—跟不同类型的MM约会,要用不同的策略,有的请电影比较好,有的则去吃小吃效果不错,有的去海边浪漫最合适,单目的都是为了得到MM的芳心,我的追MM锦囊中有好多Strategy哦。
策略模式:策略模式针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模式把行为和环境分开。环境类负责维持和查询行为类,各种算法在具体的策略类中提供。由于算法和环境独立开来,算法的增减,修改都不会影响到环境和客户端。
22、TEMPLATE METHOD——看过《如何说服女生上床》这部经典文章吗?女生从认识到上床的不变的步骤分为巧遇、打破僵局、展开追求、接吻、前戏、动手、爱抚、进去八大步骤(Template method),但每个步骤针对不同的情况,都有不一样的做法,这就要看你随机应变啦(具体实现);
模板方法模式:模板方法模式准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。先制定一个顶级逻辑框架,而将逻辑的细节留给具体的子类去实现。
23、VISITOR—情人节到了,要给每个MM送一束鲜花和一张卡片,可是每个MM送的花都要针对她个人的特点,每张卡片也要根据个人的特点来挑,我一个人哪搞得清楚,还是找花店老板和礼品店老板做一下Visitor,让花店老板根据MM的特点选一束花,让礼品店老板也根据每个人特点选一张卡,这样就轻松多了;
访问者模式:访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构可以保持不变。访问者模式适用于数据结构相对未定的系统,它把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由的演化。访问者模式使得增加新的操作变的很容易,就是增加一个新的访问者类。访问者模式将有关的行为集中到一个访问者对象中,而不是分散到一个个的节点类中。当使用访问者模式时,要将尽可能多的对象浏览逻辑放在访问者类中,而不是放到它的子类中。访问者模式可以跨过几个类的等级结构访问属于不同的等级结构的成员类。 转帖:http://baike.baidu.com/view/1082055.htm
86
10-29
2008年9月28日:经常在看统计数据的时候,总会看到大大小小的个人博客链接到我的博客,今天也有人在留言本中留言说,他是做PHP的,能不能交换友情链接,其实嘛想想,无所谓的,但每个人的友情链接俺都交换,势必友情链接那一栏也撑不下,因此改变友情链接交换战略,具体请看下面。
1、非商业网站(判定标准以广告位数量取决,当然一两个无所谓,满天飞的那当然就不行了)
2、你的网站至少我进去看的第一眼非常舒服,很简洁很干净,很容易就让浏览者明白你网站内容主要方向是什么
3、不说天天更新,至少一个月得更新一篇以上,基本每天都无变化那跟你交换友情链接不等于跟死人握手么?很恐怖额
4、内容一定要有价值,我是希望喜欢我博客的朋友,在通过看我的友情链接,让他同时找到第二个跟我博客一样的博客
总结:不喜欢友情链接那一栏如同高墙垒筑一般,因此首页中友情链接,我会挑选一些PR值较高、原创、有原则、权威、我认为比较不错的网站放到首页,剩下的我都会放在该帖子中、当然对于真的不错的博客,我也会现在该贴中推荐!
希望大家能理解我的做法,如果觉得接受不了该标准,没关系可以以后不来我的博客
当我从统计数据中,看到了有其他网站链入在没有申请的情况下,我也会加入到我博客中来
注意:如果您的博客没有独立域名,而是使用一些譬如blogbus,baidu空间等博客系统,作为友情链接都只会放在该页面!
以下是推荐链接:(后面的是我给评价)




- 查看svn更新内容以及最新状态(实时更新)
- 查看框架API文档(09.6.15更新)
- 查看框架代码(09.4.20更新)
框架暂停开发,且没有完全竣工,目前只能使用air包和library包!