Project1

标题: 脚本学习中遇到的不解之处 [打印本页]

作者: God_sky无双    时间: 2008-1-16 03:36
提示: 作者被禁止或删除 内容自动屏蔽
作者: God_sky无双    时间: 2008-1-16 03:36
提示: 作者被禁止或删除 内容自动屏蔽
作者: 冰水    时间: 2008-1-16 03:59
第2-4行定义了name方法。返回@name
第5-7行定义了name=这个方法。方法名中也可以带等号{/wx}括号中的是参数。
怎么会有这种奇怪的用法?
如果我写这段脚本,与上面的功能一样。
class Person
def hello(name)
   print "我是" + name + ""
#如果特别需要个属性。加上 @name = name
end
end
alex = Person.new
alex.hello("艾力克斯")     # => 我是艾力克斯


作者: God_sky无双    时间: 2008-1-16 04:45
提示: 作者被禁止或删除 内容自动屏蔽
作者: link006007    时间: 2008-1-16 11:04
以下引用God_sky无双于2008-1-15 20:45:12的发言:
还有就是RM里的帮助里所讲的使用 name、name= 方法把对象附加上 @name 实变量作为属性里面的对象是什么?
而且属性又怎么理解?

里面的对象就是你要赋予@name的值
属性就是一个类的成员, 可以是值,也可以是方法
def name=(xx) 表现上有点像C/C++的运算符重载...
作者: 美兽    时间: 2008-1-16 18:07
里面的对象就是你要赋予@name的值
属性就是一个类的成员, 可以是值,也可以是方法
def name=(xx) 表现上有点像C/C++的运算符重载...


觉得的应该是覆盖,重载不会失去原有功能。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1