class Person def name return @name end def name=(name) @name = name end def hello print "我是" + @name end end alex = Person.new alex.name = "阿莱库斯" alex.hello # => 我是阿莱库斯
上面的示例是先准备 @name 实例变量,使用 name、name= 方法使对象的实例变量在对象外也可以访问。另外,末尾带有 = 记号的方法,可以用 foo.name = bar 的形式调用。 实例变量和全局变量一样,获取未赋值的实例变量时不会产生错误而会返回 nil。
xjzsq 发表于 2016-10-3 22:31
实例变量时只能在对象内部使用的变量,但是现在我们想在类的外部使用它,就要通过accessor方法来获得,即用 ...
Elevenorth 发表于 2016-10-3 23:03
也就是说,它只是一个Ruby下的一种语法?
就像p,print,msgbox那样的固定东西,不必理解只需记住么? ...
喵呜喵5 发表于 2016-10-4 01:31
不……你必须理解……因为这个是非常核心同时又是非常基础的知识……
这个方法你能看得懂吗?
Elevenorth 发表于 2016-10-4 14:23
定义一个名称为a的普通函数,为其赋值b。
函数内容是在控制台内输出这个b。
结束函数定义。
| 欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |