即使類不同,只要有相同的回撥一樣可以處理
class Duck
def quack
puts "quack"
end
end
class Mallard
def quack
puts "qwuaaaack!! quack"
end
end
birds = [Duck.new, Mallard.new,Object.new]
birds.each do |duck|
duck.quack if duck.response_to? :quack
end
本作品採用《CC 協議》,轉載必須註明作者和本文連結