Зміст дописунатисність на посилання, щоб перейти до потрібного місця
Поліморфізм - це принцип об'єктно-орієнтованого програмування, який дозволяє об'єктам одного класу використовувати методи іншого класу. Це може бути досягнуто через спеціальні механізми, такі як перевизначення методів або інтерфейси.
У Ruby поліморфізм можна створити через використання спільного ім'я методу для різних класів.
Приклад використання поліморфізму в Ruby
# Створення класу Shape з методом draw class Shape def draw raise NotImplementedError, 'Subclasses must implement the draw method' end end # Створення класу Circle, який успадковує від Shape class Circle < Shape def draw puts 'Drawing a circle' end end # Створення класу Rectangle, який також успадковує від Shape class Rectangle < Shape def draw puts 'Drawing a rectangle' end end # Використання поліморфізму circle = Circle.new rectangle = Rectangle.new # Виклик методу draw для кола circle.draw # Виклик методу draw для прямокутника rectangle.draw
У цьому прикладі обидва класи Circle і Rectangle успадковують від базового класу Shape і реалізують метод draw. При виклику методу draw для об'єктів класів Circle та Rectangle, викликаються відповідні реалізації методу, що виражає поліморфізм. Також буде корисним прочитати про наслідування в ruby.