Created

Embed URL

HTTPS clone URL

SSH clone URL

You can clone with HTTPS or SSH.

Download Gist

Defining methods in an included module inside your class allows modification by modules later.

View module_overrides.rb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
class Dog
module InstanceMethods
def bark
"Arf arf!"
end
end
include InstanceMethods
end
 
dog = Dog.new
dog.bark
#=> "Arf arf!"
 
module JapaneseBark
def bark
"Won won!"
end
end
 
Dog.send :include, JapaneseBark
dog = Dog.new
dog.bark
#=> "Won won!"
 
# This is versus:
 
class Cat
def meow
"Mew!"
end
end
 
cat = Cat.new
cat.meow
#=> 'Mew!'
 
module JapaneseMeow
def meow
'Nya!'
end
end
 
Cat.send :include, JapaneseMeow
cat = Cat.new
cat.meow
#=> 'Mew!'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.