Flash CS3 文档 |
|||
| ActionScript 2.0 语言参考 > ActionScript 类 > Object > prototype(Object.prototype 属性) | |||
public static prototype : Object
对类或函数对象的超类的引用。prototype 属性会自动创建并附加到您所创建的任何类或函数对象。此属性是静态的,原因在于:它特定于您所创建的类或函数。例如,如果您创建自定义类,则 prototype 属性的值由类的所有实例共享,并且只能将其作为类属性进行访问。自定义类的实例无法直接访问 prototype 属性,但可通过 __proto__ 属性访问它。
可用性:ActionScript 1.0、Flash Player 6
以下示例创建一个名为 Shape 的类以及名为 Circle 的 Shape 的子类。
// Shape class defined in external file named Shape.as
class Shape {
function Shape() {}
}
// Circle class defined in external file named Circle.as
class Circle extends Shape{
function Circle() {}
}
Circle 类可用于创建 Circle 的两个实例:
var oneCircle:Circle = new Circle(); var twoCircle:Circle = new Circle();
下面的 trace 语句演示 Circle 类的 prototype 属性指向其超类 Shape。标识符 Shape 引用 Shape 类的构造函数。
trace(Circle.prototype.constructor == Shape); // Output: true
下面的 trace 语句演示如何将 prototype 属性和 __proto__ 属性一起使用以便在继承层次结构(或原型链)中上移两层。Circle.prototype.__proto__ 属性包含对 Shape 类的超类的引用。
trace(Circle.prototype.__proto__ == Shape.prototype); // Output: true
__proto__(Object.__proto__ 属性)
Flash CS3
当前页: http://livedocs.adobe.com/flash/9.0_cn/main/00002043.html