本文简要介绍ruby语言中 Module.method_defined?
的用法。
用法
method_defined?(symbol, inherit=true) → true or false
method_defined?(string, inherit=true) → true or false
如果命名方法由 mod
定义,则返回 true
。如果设置了 inherit
,则查找还将搜索 mod
的祖先。公共和受保护的方法是匹配的。 String
参数被转换为符号。
module A
def method1() end
def protected_method1() end
protected :protected_method1
end
class B
def method2() end
def private_method2() end
private :private_method2
end
class C < B
include A
def method3() end
end
A.method_defined? :method1 #=> true
C.method_defined? "method1" #=> true
C.method_defined? "method2" #=> true
C.method_defined? "method2", true #=> true
C.method_defined? "method2", false #=> false
C.method_defined? "method3" #=> true
C.method_defined? "protected_method1" #=> true
C.method_defined? "method4" #=> false
C.method_defined? "private_method2" #=> false
相关用法
- Ruby Module.method_removed用法及代码示例
- Ruby Module.method_added用法及代码示例
- Ruby Module.method_undefined用法及代码示例
- Ruby Module.module_exec用法及代码示例
- Ruby Module.module_eval用法及代码示例
- Ruby Module.module_function用法及代码示例
- Ruby Module.attr_accessor用法及代码示例
- Ruby Module.private用法及代码示例
- Ruby Module.deprecate_constant用法及代码示例
- Ruby Module.instance_method用法及代码示例
- Ruby Module.class_variables用法及代码示例
- Ruby Module.included_modules用法及代码示例
- Ruby Module.singleton_class?用法及代码示例
- Ruby Module.included用法及代码示例
- Ruby Module.include?用法及代码示例
- Ruby Module.ruby2_keywords用法及代码示例
- Ruby Module.extend_object用法及代码示例
- Ruby Module.class_exec用法及代码示例
- Ruby Module.autoload用法及代码示例
- Ruby Module.ancestors用法及代码示例
- Ruby Module.class_variable_get用法及代码示例
- Ruby Module.class_variable_defined?用法及代码示例
- Ruby Module.new用法及代码示例
- Ruby Module.obj ==用法及代码示例
- Ruby Module.const_missing用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Module.method_defined?。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。