私は2つのモジュールを持っていて、どちらも関数 'foo'を持っているとします。それを含むクラスのオブジェクトを使用してModule1のfooを呼び出す必要がある場合、どのように呼び出す必要がありますか?クラスオブジェクトを使ってモジュール内のメソッドを呼び出す方法(別の2つのモジュールで同じメソッド名) - ruby
コードサンプル:
module Module1
def foo
puts 'first one'
end
end
module Module2
def foo
puts 'second one'
end
end
class ClassName
include Module1
include Module2
def initialize
Module1.instance_method(:foo).bind(self).call
Module2.instance_method(:foo).bind(self).call
end
end
cls = ClassName.new
がどのようにメソッドを呼び出すオブジェクトのCLSを '(私はModule1のののfooを呼び出す必要がある場合)を使用して、FOO?
ありがとうございます!
[XY問題](https://meta.stackexchange.com/q/66377)のようです。あなたは何を達成しようとしていますか? – Stefan
あなたの質問は不明です。あなたはあなたの問題を解決したようです: 'initialize'メソッドの2つの行は、それぞれのメソッドを順に呼び出します。後で、またはクラスの外から電話する方法を尋ねていますか? –
@JordanRunning。はい、ヨルダン。私はクラス内のメソッドを呼び出すことができます。しかし、私はクラスの外でクラスオブジェクトを使用して呼び出したい。 – user3763227