根据接收者的不同,ruby方法可以分为三类:
- 实例方法
- 类方法
- 函数式方法
实例方法
假设有一个对象,那么以这个对象作为接收者的方法被称为实例方法。
例子:
p "10, 20, 30, 40".split(",") #=> ["10", "20", "30", "40"]
p [1, 2, 3, 4].index(2) #=> 1
p 1000.to_s #=> "1000"
在本例中,从上到下,分别以字符串、数组、数值对象为接收者。
类方法
接收者是类本身的方法,叫类方法。
列子:
Array.new #创建新的数组
File.open("a") #创建新的文件对象
Time.now #创建新的Time对象
调用类方法时,可以用“::”替代“.”。 ruby语法中,这两者表达的意思一样。
函数式方法
不需要接收者的方法,叫函数式方法。
例子:
print "这个是函数式方法!"
sleep 3