在flex中声明变量

rlcwz9us  于 2023-01-25  发布在  Apache
关注(0)|答案(2)|浏览(188)

我在flex的一个ActionScript类中找到了这个。

protected::valueMin

请让我知道这到底是什么意思。在开始的时候,我没有看到任何类型声明。我是Flex的新手。

mwkjh3gx

mwkjh3gx1#

正如spash所说,这种语法用于命名空间。在这种情况下,它实际上是用来解决编译器问题的。问题是,你不能声明一个getter和setter作用域不同的访问器。也就是说,你可以声明它,但是通过它的名称访问访问器会导致编译错误。
请考虑以下几点:

private var _name:String;

[Bindable(event="nameChange")]
public function get name():String {
  return _name;
}

private function set name(value:String):void {
  if (value !== _name) {
    _name = value;
    dispatchEvent(new Event("nameChange"));
  }
}

如果您现在尝试访问"name"属性以获取或设置它,这将导致编译错误:

name = "John Doe";

但是,如果指定了范围,则代码将编译。

private::name = "John Doe";
gajydyqb

gajydyqb2#

它应该是对受保护类成员valueMin的引用。
您可以使用use namespace指令引用命名空间,也可以使用名称限定符(::)标点符号用命名空间限定名称。
另请参见:名称空间

相关问题