查看Ruby元编程技术的源代码
←
Ruby元编程技术
跳转到:
导航
、
搜索
因为以下原因,你没有权限编辑本页:
您刚才请求的操作只有这个用户组中的用户才能使用:
用户
您可以查看并复制此页面的源代码:
== Method Missing == * method_missing包含在kernel模块中,默认抛出无法找到方法的error * 对象可以复写method_missing来动态响应方法调用,思考下,这其实就是消息传递。 * 用途: ** 幽灵方法:用来响应不曾明确的方法 ** 动态代理: 例如为web service创建本地动态代理 ** * delegate标准库,委托模式 * const_missing方法,用于常量 * 注意事项: ** 避免无限循环,适当调用super来终止循环。 ** 最好在一个白板对象上使用幽灵方法,避免重名,如何得到一个白板对象?使用undef_method方法来移除所有方法,或者继承BasicObject(Ruby 1.9)。 ** 适当定义respond_to?来响应幽灵方法。 class Computer instance_methods.each do | m | undef_method m unless m.to_s =~ / ^__ | method_missing | respond_to?/ end def method_missing(name,*args) ...... end end
返回到
Ruby元编程技术
。
个人工具
登录
名字空间
页面
讨论
变换
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
社区专页
新闻动态
最近更改
随机页面
帮助
工具箱
链入页面
相关更改
特殊页面