ruby - Ruby 中的匿名类

标签 ruby eigenclass

我有两个问题:

  1. f_1 方法是否属于元类匿名类?
  2. f_2 方法是否属于匿名类?

相关代码如下:

car = "car"

class << car
  def self.f_1
    puts "f_1"
  end
  def f_2
    puts "f_2"
  end
end

最佳答案

由于 ruby​​ 自己的 API 使用术语“singleton class”,因此我认为以下内容是正确的:

  1. f_1 是 car 单例类的类方法,可以这样调用:

    car.singleton_class.f_1
    
  2. f_2 是 car 单例类的实例方法,可以这样调用:

    car.f_2
    

关于ruby - Ruby 中的匿名类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6376628/

相关文章:

ruby - Sort_by Ruby,一个降序,一个升序

ruby-on-rails - 运行 "bundle"时的 Bundler 警告 - Ruby on Rails

ruby - 正则表达式从电子邮件地址中查找名称

ruby - 如何使模块常量在特征类中也可见?

ruby - 在 ruby​​ 类的特征类中设置实例默认值

Ruby 特征类模式 - 要求澄清

Ruby eigenclass(单例类)创建了吗?为了哪个?

ruby - 从特征类确定类

ruby - 捕获小 cucumber 表中的尾随空格

Ruby bool 双重否定约定