Bazen objelerin private methodlarını konsol üzerinde vs. çalıştırmaya ihtiyaç duyabilirsiniz.
class Foo
private
def bar
"foo bar baz"
end
end
Ama gizli methoda erişmeye çalışırsak kardeş sen ne yapıyorsun bu private method hatası dönüyor.
> Foo.new.bar
# NoMethodError: private method `bar' called for #<Foo:0x007fed14294628>
Ama send
ile çağırırsak ?
> Foo.new.send(:bar)
# "foo bar baz"
Yuppi!