当前位置:  开发笔记 > 编程语言 > 正文

如何获取方法的Method对象?

如何解决《如何获取方法的Method对象?》经验,为你挑选了1个好方法。

我正在尝试按以下方式扩展Method类:

irb(main):008:0> class A
irb(main):009:1> def a
irb(main):010:2> puts "blah"
irb(main):011:2> end
irb(main):012:1> end
=> nil
irb(main):013:0> class Method
irb(main):014:1> def aa
irb(main):015:2> p "hi"
irb(main):016:2> end
irb(main):017:1> end
=> nil
irb(main):018:0> f = A.new
=> #
irb(main):019:0> A.a
NoMethodError: undefined method `a' for A:Class
    from (irb):19
    from :0
irb(main):020:0> f.a
blah
=> nil
irb(main):027:0> f.a.aa
blah
NoMethodError: undefined method `aa' for nil:NilClass
    from (irb):27
    from :0

正如所料,当我f.a.aa,.aa正在执行的返回值f.a.如何获得对表示的Method对象的访问权限f.a



1> 小智..:

用这个method方法... =)

f.method(:a).aa


@squeegy:你只需要在研究中采用方法论.:)
推荐阅读
乐韵答题
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有