Polymorphismus - ist ein Prinzip
der objektorientierten Programmierung, das es Objekten einer Klasse ermöglicht, Methoden einer anderen Klasse zu verwenden. Dies kann durch spezielle Mechanismen erreicht werden, wie z.B. das Überschreiben von Methoden oder Schnittstellen.
In Ruby kann Polymorphismus durch die Verwendung eines gemeinsamen Methodennamens für verschiedene Klassen erstellt werden.
Beispiel für die Verwendung von Polymorphismus in Ruby
# Erstellung der Klasse Shape mit der Methode draw
class Shape
def draw
raise NotImplementedError, 'Subklassen müssen die draw-Methode implementieren'
end
end
# Erstellung der Klasse Circle, die von Shape erbt
class Circle < Shape
def draw
puts 'Zeichne einen Kreis'
end
end
# Erstellung der Klasse Rectangle, die ebenfalls von Shape erbt
class Rectangle < Shape
def draw
puts 'Zeichne ein Rechteck'
end
end
# Verwendung von Polymorphismus
circle = Circle.new
rectangle = Rectangle.new
# Aufruf der Methode draw für den Kreis
circle.draw
# Aufruf der Methode draw für das Rechteck
rectangle.draw
In diesem Beispiel erben beide Klassen
Circle und
Rectangle von der Basisklasse
Shape und implementieren die Methode
draw. Wenn die Methode
draw für Objekte der Klassen
Circle und
Rectangle aufgerufen wird, werden die entsprechenden Implementierungen der Methode aufgerufen, was den Polymorphismus ausdrückt. Es wird auch nützlich sein, über
Vererbung in Ruby. zu lesen.