Polymorphism
Полиморфизм - это способность объектов разных классов иметь методы с одинаковыми именами, которые ведут себя по-разному, позволяя использовать единый интерфейс для различных типов данных. Это достигается за счет динамической типизации и переопределения методов, что делает код гибким, читаемым и удобным для расширения. Подклассы могут переопределять методы родительского класса.
class Dog
def speak
puts "Гав!"
end
end
class Cat
def speak
"Мяу!"
end
end
Dog.new.speak
# => Гав!
Cat.new.speak
# => Мяу!