本文简要介绍ruby语言中 Object.define_singleton_method
的用法。
用法
define_singleton_method(symbol, method) → symbol
define_singleton_method(symbol) { block } → symbol
在接收器中定义一个单例方法。 method
参数可以是 Proc
、 Method
或 UnboundMethod
对象。如果指定了块,则将其用作方法体。如果一个块或方法有参数,它们被用作方法参数。
class A
class << self
def class_name
to_s
end
end
end
A.define_singleton_method(:who_am_i) do
"I am: #{class_name}"
end
A.who_am_i # ==> "I am: A"
guy = "Bob"
guy.define_singleton_method(:hello) { "#{self}: Hello there!" }
guy.hello #=> "Bob: Hello there!"
chris = "Chris"
chris.define_singleton_method(:greet) {|greeting| "#{greeting}, I'm Chris!" }
chris.greet("Hi") #=> "Hi, I'm Chris!"
相关用法
- Ruby Object.display用法及代码示例
- Ruby Object.dup用法及代码示例
- Ruby Object.instance_variable_get用法及代码示例
- Ruby Object.remove_instance_variable用法及代码示例
- Ruby Object.methods用法及代码示例
- Ruby Object.public_send用法及代码示例
- Ruby Object.xmp用法及代码示例
- Ruby Object.singleton_methods用法及代码示例
- Ruby Object.enum_for用法及代码示例
- Ruby Object.freeze用法及代码示例
- Ruby Object.inspect用法及代码示例
- Ruby Object.obj ==用法及代码示例
- Ruby Object.method用法及代码示例
- Ruby Object.DelegateClass用法及代码示例
- Ruby Object.instance_of?用法及代码示例
- Ruby Object.nil?用法及代码示例
- Ruby Object.instance_variable_defined?用法及代码示例
- Ruby Object.singleton_class用法及代码示例
- Ruby Object.kind_of?用法及代码示例
- Ruby Object.send用法及代码示例
- Ruby Object.itself用法及代码示例
- Ruby Object.to_enum用法及代码示例
- Ruby Object.__id__用法及代码示例
- Ruby Object.is_a?用法及代码示例
- Ruby Object.instance_variable_set用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Object.define_singleton_method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。