Wenn du schon im vorhinein den Empfänger kennst (in deinem Fall also self) wäre es sinnvoller, die Methode direkt vom Emfänger abzufragen, also self.method(:example_method). Dann kannst du dir den bind aufruf sparen.

Der Code wie du ihn geschrieben hast, funktioniert wenn du Example_Class.instance_method aufrufst. Hab ich in meinem letzten Post übersehen.

Das führt zu zwei möglichkeiten:

Code:
class Test

  def initialize
    @m = Test.instance_method(:example_method)
    @m = @m.bind(self) # bind liefert nur eine Method instanz die an self gebunden ist zurück, bindet es aber nicht an @m
    @m.call
  end

  def example_method
    print("hi")
  end
  
end
Code:
class Test

  def initialize
    @m = self.method(:example_method) # Liefert ein Method Objekt, welches direkt an self gebunden ist
    @m.call
  end

  def example_method
    print("hi")
  end
  
end