ruby 给对象添加新的方法
时间: 2023-08-29 09:07:40 浏览: 131
在 Ruby 中,可以通过以下两种方式为对象添加新的方法:
1. 使用对象的 singleton_class:每个对象都有自己的 singleton_class,可以在其中定义该对象的特定方法,这些方法只能在该对象上调用。
```ruby
obj = Object.new
def obj.my_custom_method
puts "Hello from my custom method!"
end
obj.my_custom_method #=> "Hello from my custom method!"
```
2. 使用模块 mixin:可以将自定义方法定义在一个模块中,然后使用 include 或 extend 将该模块添加到指定类或对象中。
```ruby
module MyCustomMethods
def my_custom_method
puts "Hello from my custom method!"
end
end
class MyClass
include MyCustomMethods
end
obj = MyClass.new
obj.my_custom_method #=> "Hello from my custom method!"
```
阅读全文