class Behaviour
def initialize
puts 'Behaviour::initialize called'
end
end
class Fizz < Behaviour
def initialize
puts 'Fizz::initialize called'
end
end
b = Behaviour.new
#=> Behaviour::initialize called
b.is_a? Behaviour
#=> true
f = Fizz.new
#=> Fizz::initialize called
f.is_a? Behaviour
#=> true
f.instance_of? Fizz
#=> true
f.instance_of? Behaviour
#=> false
Read more: http://feeds.dzone.com/~r/dzone/snippets/~3/URWsmnETPL0/11301