sendによるメソッドの抽象化
sendメソッド
渡されたオブジェクトに「メッセージを送る」ことによって、呼び出すメソッドを動的に決めることができる。
a = [1, 2, 3] a.length => 3 a.send(:length) => 3 a.send("length") => 3 xxx = 'length' a.send("#{xxx}") => 3
どれもオブジェクトにlengthメソッドを渡しているため、等価
渡されたオブジェクトに「メッセージを送る」ことによって、呼び出すメソッドを動的に決めることができる。
a = [1, 2, 3] a.length => 3 a.send(:length) => 3 a.send("length") => 3 xxx = 'length' a.send("#{xxx}") => 3
どれもオブジェクトにlengthメソッドを渡しているため、等価