Ruby 文档 "::"与 "#"

标签 ruby

我是 Ruby 新手。

有人可以向我解释一下 Ruby 文档中为类列出的方法前面的字符之间的区别吗?

这是一个例子:对于 String 类,::new::try_convert 之前的字符 :: ##chomp 等方法之前

最佳答案

它指定方法的“级别”。 :: 用于类级方法,# 用于实例级方法。

例如,当您看到 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"

关于Ruby 文档 "::"与 "#",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14758853/

相关文章:

javascript - 如何在 ember 中使用服务器生成的内容链接到特定的 Rails API 路由?

ruby-on-rails - 为什么 Rails 在启动时预加载它的所有依赖项(gems)?

python - 在 Ruby 和 Python 中使用 yield 创建列表

ruby-on-rails - 覆盖 rails 中的默认脚手架 View 不起作用

ruby - 这个 Ruby PSQL 是安全的吗?

ruby - 使用 Ruby 更改目录(有副作用?)

ruby-on-rails - 名称错误 : undefined local variable or method `logger'

ruby - 模糊文档匹配/文本指纹识别的最佳库

ruby-on-rails - 将用户 ID 链接到配置文件模型 - Ruby on Rails

ruby-on-rails - Ruby On Rails 迁移