AS3:私有变量应该_

Dan*_*Dan 5 syntax actionscript-3

我认为AS3现在增加了私人能力.那么为什么我仍然应该使用下划线来预设私有变量?

private var _privVar:String;
Run Code Online (Sandbox Code Playgroud)

Ada*_*rte 10

我在ActionScript 3中将其作为遵循Adobe风格的一般规则.

除非您使用吸气剂或固定器,否则不要将下划线用于私人变量.例如:

private var _foo:String?
public function get foo():String
{
    return _foo?
}
public function set foo(value:String):void
{
    _foo = value?
}
Run Code Online (Sandbox Code Playgroud)

这个示例getter/setter有点无用,因为您可以创建一个执行相同操作的公共属性.只有在获得或设置属性时需要执行特殊操作时才使用getter或setter .即便如此,通常最好只创建一个公共方法.

还有一点.就个人而言,我认为缩写变量或方法名称并不是一个好主意.因此,我不会调用我的变量privVar,而是将其称为privateVariable.如果您使用具有自动完成/建议的IDE(例如FlashBuilder(Flex Builder)或FlashDevelop),则尤其如此.

查看Adobe编码约定和最佳实践以获取更多信息.


hea*_*ved 3

你不必这样做。这是鼓励可读性的东西,但绝不是强制性的。完全是个人喜好。