在Ruby中,模塊(Module)是一種代碼復(fù)用的機制
要定義一個模塊,可以使用module
關(guān)鍵字,后跟模塊名稱。例如:
module MyModule
def my_method
puts "Hello from MyModule!"
end
end
要使用模塊中的方法,需要將模塊包含在類或?qū)ο笾???梢允褂?code>include關(guān)鍵字來實現(xiàn)。例如:
class MyClass
include MyModule
end
現(xiàn)在,MyClass
實例可以調(diào)用my_method
方法了:
my_instance = MyClass.new
my_instance.my_method # 輸出 "Hello from MyModule!"
如果你想在運行時動態(tài)地擴展一個類的功能,可以使用extend
關(guān)鍵字。例如:
class MyClass
end
MyClass.extend MyModule
my_instance = MyClass.new
my_instance.my_method # 輸出 "Hello from MyModule!"
模塊還可以用作命名空間,以避免方法名沖突。例如:
module MyNamespace
class MyClass
def my_method
puts "Hello from MyNamespace::MyClass!"
end
end
end
my_instance = MyNamespace::MyClass.new
my_instance.my_method # 輸出 "Hello from MyNamespace::MyClass!"
這些是Ruby模塊的基本使用方法。希望對你有所幫助!