我有两个问题:

  • 方法 f_1 是否属于元类匿名类?
  • 方法 f_2 是否属于匿名类?

  • 与以下代码相关:
    car = "car"
    
    class << car
      def self.f_1
        puts "f_1"
      end
      def f_2
        puts "f_2"
      end
    end
    

    最佳答案

    好吧,术语是脆弱的,但 FWIW 我会说你的类(class)并不是真正的匿名类(class)。至于归属,这两种方法都只存在于汽车对象中。

    老实说,我承认当类是针对这样的单个对象定义时,我对类方法和实例方法之间的区别有点含糊不清——我想如果有任何区别,它会是一个晦涩难懂的代码,它会使您的代码更难阅读 ;)

    更新:如果您以前没有见过 this,您可能会发现它很有帮助。 (就个人而言,这让我很头疼,但每个人都不一样......)

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

    10-11 04:06