请使用以下代码:
private var m_iWidth:int;
[Bindable]
public function get width():int
{
Alert.show("getter");
return m_iWidth;
}
private function set width(pValue:int):void
{
Alert.show("setter");
m_iWidth = pValue;
}
private function someFunction(pWidth:int):void
{
width = pWidth;
}
width = pWidth;
的输出是:
getter
setter
getter
getter
请解释一下。感谢。
答案 0 :(得分:1)
1)设置属性后,代码首先调用getter以查看值是否不同。如果它是相同的,则不调用setter(解释第一个get / set对)。
2)如果属性被绑定,在设置之后任何访问都将调用getter(解释最后两个getter调用)