Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 as3-如何从基类定义实例子类?_Actionscript 3 - Fatal编程技术网

Actionscript 3 as3-如何从基类定义实例子类?

Actionscript 3 as3-如何从基类定义实例子类?,actionscript-3,Actionscript 3,我有一个movieclip父级,其中包含movieclip实例。然而,movieclip父级扩展了一个基类,我想通过使用实例名和从基类定义来定义一个子类 例如,如果movieclip父对象中有一个子对象的实例名为“player” 在movieclip父类中,您只需将其定义为 player //or this.player 但是从基类来看,这种方法不起作用。如何从基类定义它?您可以在基类中定义player,但必须在AS3设置中禁用“自动声明阶段实例”。选中该选项后,编译器会盲目地尝试将所有命名实

我有一个movieclip父级,其中包含movieclip实例。然而,movieclip父级扩展了一个基类,我想通过使用实例名和从基类定义来定义一个子类

例如,如果movieclip父对象中有一个子对象的实例名为“player”

在movieclip父类中,您只需将其定义为

player
//or
this.player

但是从基类来看,这种方法不起作用。如何从基类定义它?

您可以在基类中定义
player
,但必须在AS3设置中禁用“自动声明阶段实例”。选中该选项后,编译器会盲目地尝试将所有命名实例添加为链接类的属性。如果将其禁用,则可以控制这些属性的实际定义位置。因此,我总是关闭此功能

例如:

class Base extends MovieClip {
    public var player:MovieClip;
}

class SymbolClass extends Base {
    // linked to a symbol that contains a 'player' instance
}
如果选中了“自动声明阶段实例”,则无法执行此操作,因为
SymbolClass
将尝试自动声明
player
,并且它将与
Base
player
声明冲突


还要注意,如果您的符号不包含
player
实例,则代码仍然有效,但
player
将为
null

我得到了这个错误,1119:通过静态类型BaseClass的引用访问可能未定义的属性player。您是否在基类中将
player
声明为
public
?我没有创建变量。我只使用了实例名。