Einer der wichtigsten Aspekte beim Schreiben der Ruby-Klassen besteht darin, den Unterschied zwischen den Klassenmethoden und den Instanzmethoden zu verstehen. Auf diesen Unterschied möchten wir in diesem Beitrag eingehen. Zunächst einmal wird die Methode, die sich auf Klassenebene befindet, als Klassenmethode bezeichnet, und die Methode, die sich auf Objektebene befindet, wird als Instanzmethode bezeichnet. Um den Bezug zu erleichtern: Für die Entwickler sind die Methoden, die für eine Klasse aufgerufen werden, die Klassenmethoden und diejenigen, die für eine Instanz einer Klasse aufgerufen werden, die Instanzmethoden.
Beispiele: Wenn Sie mit Ruby arbeiten, müssen Sie wissen, dass Klassen auch Objekte sind und dass die als Klassenmethoden definierten Methoden daher speziell nur den Objekten entsprechen, die diese Klassen definieren. Wenn wir beispielsweise my_class_method in einer Klasse mit dem Namen Test definieren, entspricht my_class_method nur dem Objekt namens Test, und dieser Test ist nichts anderes als ein Beispiel einer integrierten Ruby-Klasse mit dem Namen „Class“.
Wann sollte eine Klassenmethode verwendet werden?
Eine Klassenmethode ist ein Teil der Funktionalität, der von einer bestimmten Instanz unabhängig ist, sondern lediglich zu einer Klasse gehört. Die Klassenmethode wird für die Funktionalität verwendet, die für keine Instanz einer Klasse spezifisch ist. Beispiel:Wann sollten die Instanzmethoden verwendet werden?
Instanzmethoden werden verwendet, wenn Sie auf eine bestimmte Instanz einer Klasse reagieren müssen. Wenn Sie eine Funktionalität einführen müssen, die der Identität einer Instanz entspricht, sollten Sie die Instanzmethode verwenden. Beispiel: Es ist wichtig, diesen scheinbar subtilen Unterschied zwischen der Verwendung einer Klassenmethode und der Verwendung einer Instanzmethode zu verstehen, denn ohne klare Kenntnisse darüber kann Ihr objektorientierter Entwurf schiefgehen. Dies führt dazu, dass Sie häufig auf Fälle stoßen, in denen fälschlicherweise sowohl Klassenmethoden als auch Instanzmethoden anstelle der anderen verwendet wurden. Die Kapselungs- und Modellierungsattribute des objektorientierten Designs sind die Schlüsselelemente für seinen Erfolg. Es ist also zu beachten, dass die Instanzmethoden eingesetzt werden müssen, wenn die zu implementierende Funktionalität einem Objekt entspricht. Gleichzeitig ist es auch wichtig zu wissen, ob die implementierte Funktionalität mit der spezifischen Instanz des Objekts übereinstimmt oder nicht. Speichern Speichern SpeichernAbonnieren Sie die neuesten Updates
zusammenhängende Posts