阅读量:137
在Ruby中,有多种方法可以调用一个方法。以下是一些常见的方法:
- 直接调用:
def my_method
puts "Hello, World!"
end
my_method
- 使用对象调用:
class MyClass
def my_method
puts "Hello, World!"
end
end
my_instance = MyClass.new
my_instance.my_method
- 使用模块和继承:
module MyModule
def my_method
puts "Hello, World!"
end
end
class MyClass
include MyModule
end
my_instance = MyClass.new
my_instance.my_method
- 使用
call方法:
def my_method
puts "Hello, World!"
end
my_method.call
- 使用
send方法:
def my_method
puts "Hello, World!"
end
my_method.send(:my_method)
- 使用
__send__方法:
def my_method
puts "Hello, World!"
end
self.__send__(:my_method)
- 使用
instance_eval方法:
def my_method
puts "Hello, World!"
end
class MyClass
def self.my_class_method
instance_eval(&method(:my_method))
end
end
MyClass.my_class_method
- 使用
class_eval方法:
def my_method
puts "Hello, World!"
end
class MyClass
def self.my_class_method
class_eval(&method(:my_method))
end
end
MyClass.my_class_method
这些方法都可以用来调用一个方法,具体使用哪种方法取决于你的需求和编程风格。