3

私が覚えている限り、Rubyにもこの機能があります。既存のクラスにメソッドを動的に追加します。しかし、私はこれを行う方法を忘れました。機能の名前とその方法は何ですか?

4

1 に答える 1

9

既存のクラスにメソッドを追加するには、クラスを再度開いてメソッドを定義するだけです。

class ExistingClass
  def new_method
    ...
  end
end

また、使用することができますclass_eval

ExistingClass.class_eval do
  def new_method
    ...
  end
end

のすべてのインスタンスはExistingClass、の新しい機能を取得しますnew_method

于 2013-03-03T07:17:03.790 に答える