2009-01-26 112 views

回答

2

的“_”前缀没有技术意义 - 你可以用它自己的名字为影片剪辑,文本字段,或者你喜欢的任何其他变量或方法。

根据约定,它曾经为“中建”的属性(如_x_visible等)的名字,开始以底线是共同的,但他们身边停下V6或V7这样做,那么多以后属性(例如filters,transform)不使用它。此外,他们已经使用(并且仍然使用我相信在AS3中)多个内部名称,他们不希望人们绊倒内部名称(如__proto__)。

此前还有一个相当普遍的约定,将$预定为私有属性或方法,因为将它们声明为私有不会产生任何影响。你在组件中看到很多。

1

是的,这很好。不确定你应该这样做,但如果你有它的情况下,它不会错误。我倾向于保留_来作为班级的私人成员的前缀。

+0

我问你是否可以用“_”不是成员来命名MOVIECLIPs!抱歉! – 2009-01-26 16:32:01

+0

所以你的意思是实例名称不是库符号。容易犯的错误,是的,这也很好。几乎觉得这是值得投票! – 2009-01-26 16:36:35

0

是的,它可以使用影片剪辑的名字,如_myclip,你可以参考它静态this._myclip或动态了。 this["_"+"myclip"]

0

虽然没问题,但实践中只适用于“”仅用于内部私有/受保护的变量,然后编写没有“”的getter和setter。

如:

private var _word:String = "something" 

public function get word():String { 
    return _word 
} 

public function set word(a_word:String):void { 
    _word = a_word 
} 

有点冗长,但它使一个很好的API。