2014-12-18 8 views

Antwort

13

Ja, Sie können:

obj = Object.new 
obj.extend MyModule 
2

Ja, siehe Object#extend. Alle Objekte haben die extend-Methode, die eine Liste von Modulen als Argumente akzeptiert. Durch das Erweitern eines Objekts mit einem Modul werden alle Instanzmethoden aus dem Modul als Instanzmethoden für das erweiterte Objekt hinzugefügt.

module Noise 
    def cluck 
    p "Cluck cluck!" 
    end 
end 

class Cucco 
end 

anju = Cucco.new 
anju.extend Noise 
anju.cluck 

==> "Cluck cluck!" 
Verwandte Themen