作者cjcat2266 (CJ Cat)
看板Flash
标题[心得] 使用Getter该注意的事
时间Thu Nov 15 23:41:23 2007
在Setter执行完的时候会马上呼叫Getter
并且回传Getter的值
这麽做是为了方便可以直接使用更改过後的值
所以,Getter里面 不可以做除了取值以外的任何修改!!
不然的话Setter执行完呼叫的Getter还会执行一次该修改动作
除非Setter里面有 "抹除痕迹" 的措施
不过这样很麻烦...最好养成好习惯
以下code非正式语法,只是示意而已
public static var count:int = 0;
public var _myValue:Number = 1;
function get myValue():Number {
count ++; //修改的动作
return _myValue;
}
function set myValue(value:Number):void {
_myValue = value;
}
trace(myValue); //得到1
trace(count); //得到1
myValue = 2;
trace(myValue); //得到2
trace(count); //得到3,因为"myValue = 2"执行完以後有呼叫Getter
就是这样,所以用Getter要小心
只要取值就好,没事不要更改其他资料
--
CJ Cat = Croa'J Cat = Cockroach Cat = 西街凯特 = 蜚蠊猫 = 蟑螂猫
Gallery
http://cjcat2266.deviantart.com
ptt2 Board CJWorkshop - 阿多比闪光(Adobe Flash)研讨区
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.95.232
※ 编辑: cjcat2266 来自: 61.228.95.232 (11/15 23:42)