如何在Ruby中为类的特定属性定义方法?

如何在Ruby中为类的特定属性定义方法?,ruby,class,methods,Ruby,Class,Methods,我有一些问题。 让我有一只猫。Cat具有age属性,即Class::Integer。 我如何添加method.humanize,它将计算我项目中所有猫的人类年龄当量? i、 e 这称为元编程。您可以通过执行以下操作来实现您想要的目标: def @cat.humanize_age return @age * 10 end 您可以从Cat本身将该方法添加到Integer类中: class Cat attr_accessor :age def initialize(a) @ag

我有一些问题。 让我有一只猫。Cat具有age属性,即Class::Integer。 我如何添加method.humanize,它将计算我项目中所有猫的人类年龄当量? i、 e


这称为元编程。您可以通过执行以下操作来实现您想要的目标:

def @cat.humanize_age
  return @age * 10
end
您可以从
Cat
本身将该方法添加到
Integer
类中:

class Cat
  attr_accessor :age

  def initialize(a)
    @age = a
    add_meta
  end

  def add_meta
    def @age.humanize
      return self * 10
    end
  end
end

@不管怎样,如果你从不接受答案,人们都会回避你的问题。如果您想在StackOverflow问题上受到重视,您应该仔细阅读每个问题的所有答案,并单击最有用答案旁边的复选标记。@providence,谢谢您的建议!
class Cat
  attr_accessor :age

  def initialize(a)
    @age = a
    add_meta
  end

  def add_meta
    def @age.humanize
      return self * 10
    end
  end
end