在Ruby中,元編程可以通過定義類方法、實例方法、模塊方法、常量等來實現。元編程的一些常見方法包括:
class MyClass
define_method :my_method do
puts "Hello, world!"
end
end
obj = MyClass.new
obj.my_method #=> "Hello, world!"
class MyClass
class_eval do
def self.my_class_method
puts "This is a class method"
end
end
end
MyClass.my_class_method #=> "This is a class method"
class MyClass
define_method :initialize do |name|
@name = name
end
end
obj = MyClass.new("Alice")
obj.instance_eval do
puts "Hello, #{@name}!"
end #=> "Hello, Alice!"
這些都是Ruby中常見的元編程方法,通過這些方法可以動態地定義和調用方法、修改類和模塊的行為等。