我是Ruby的新手。
有人可以向我解释在Ruby文档中为类列出的方法之前的字符之间的区别是什么?
以下是一个示例:对于String类,::
和::new
之前的字符::try_convert
与#
等方法之前的#chomp
之间的字符< / p>
答案 0 :(得分:6)
它指定方法的“级别”。 ::
用于类级方法,#
用于实例级方法。
例如,当您看到String::new
时,您知道必须直接在String
课程上调用它
s = String.new # silly example, because nobody does that.
但是当您看到String#gsub
时,您了解到需要String
的实例来调用此方法
String.gsub # uh-oh, won't work
s = "I like coffee"
s.gsub('coffee', 'tea') # => "I like tea"