Super in Rubin
Bei der Entwicklung von Programmen auf einer objektorientierten Architektur müssen wir uns mit vielen Methoden und Klassen auseinandersetzen. Manchmal müssen wir die Definition einer Methode, die sich bereits in einer übergeordneten Klasse befindet, überschreiben oder abrufen.
In Ruby ist es einfach, die Definition einer Methode in der übergeordneten Klasse durch das Schlüsselwort super
zu erhalten.
In diesem Artikel sehen wir uns die Verwendung des Schlüsselworts super
in Ruby an und sehen uns ein Beispiel an, um das Thema zu vereinfachen.
Verwenden Sie super
in Ruby
Im folgenden Beispiel veranschaulichen wir die Verwendung des Schlüsselworts super
in Ruby. Lassen Sie uns den folgenden Code besprechen.
class ParentClass
def myMethod
puts "This is from the parent class."
end
end
class ChildClass < ParentClass
def myMethod
super
end
end
child = ChildClass.new
child.myMethod
Im obigen Beispiel haben wir eine ParentClass
mit einer Methode myMethod
. Es gibt eine ChildClass
, die die untergeordnete Klasse von ParentClass
mit der gleichen Methode myMethod
ist.
Jetzt haben wir innerhalb der Methodendefinition das Schlüsselwort super
verwendet, um die Definition von myMethod
aus der übergeordneten Klasse zu extrahieren.
Danach erstellen wir ein Objekt der ChildClass
und rufen die Methode myMethod
über diese Zeilen auf:
child = ChildClass.new
child.myMethod
Nachdem Sie das obige Codebeispiel ausgeführt haben, erhalten Sie die folgende Ausgabe.
This is from the parent class.
Bei der Arbeit mit dem Schlüsselwort
super
müssen Sie einige Dinge wissen. Das Schlüsselwortsuper
kann nur innerhalb einer Methode verwendet werden, und das zurückgegebene Ergebnis stammt von der übergeordneten Methode. Außerdem sollte die untergeordnete Klasse von der übergeordneten Klasse geerbt werden.
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn