def item=(item)
if @item != item
@item = item
refresh
end
end
貌似是在商店窗口中为获取当前选取物品的一个传递参数的函数
可是def部分看不懂.. item=(item)?作者: 小幽的马甲 时间: 2010-8-26 22:02
一个外部更改item的接口,括号可省略作者: 八云紫 时间: 2010-8-26 22:09
class A
def initialize
@aa = 1;
end
end
a = A.new
p a.aa #=> error
--------------------------------------------
class A
def initialize
@aa = 1;
end
def aa
return @aa;
end
end
a = A.new
p a.aa #=> 1
p a.aa() #=> 1
a.aa = 2 #=> error
--------------------------------------------
class A
def initialize
@aa = 1;
end
def aa=(index)
@aa = index;
end
end
a = A.new
p a.aa #=> error
a.aa = 2 #=> @aa = 2 <=> a.aa=(2)作者: trentswd 时间: 2010-8-27 02:38
def xxx相当于设置了只读属性attr_reader
def xxx加上def xxx= 相当于设置了可写属性attr_accessor 作者: DeathKing 时间: 2010-8-27 08:32
和元编程一个道理,不过这里面涉及到了一个俗称的约定(不一定要遵守)