Statische Klasse in Python
-
Verwenden Sie den Dekorator
@staticmethod
, um eine statische Klasse in Python zu erstellen -
Verwenden Sie den Dekorator
@classmethod
, um eine statische Klasse in Python zu erstellen - Verwenden einer Moduldatei zum Erstellen einer statischen Klasse in Python
Eine statische Klasse ist ein praktisches Feature in der Programmierung. Eine statische Klasse kann nicht vererbt und nicht instanziiert werden. Es gibt keine direkte Möglichkeit, eine Klasse statisch zu machen. In Python können wir eine statische Klasse implementieren, indem wir ihre Methoden und Variablen statisch machen.
In diesem Artikel werden wir solche Methoden implementieren.
Verwenden Sie den Dekorator @staticmethod
, um eine statische Klasse in Python zu erstellen
Um eine statische Klasse zu implementieren, können wir ihre Methoden und Variablen statisch machen. Dazu können wir den Dekorator @staticmethod
verwenden, um Methoden in einer Klasse static zu erstellen. Ein Decorator ist eine spezielle Funktion, die vor einer Funktion angegeben wird und die gesamte Funktion als Parameter verwendet.
Zum Beispiel,
class abc(object):
@staticmethod
def static_method():
print("Hi,this tutorial is about static class in python")
abc.static_method()
Ausgabe:
Hi,this tutorial is about static class in python
Beachten Sie, dass diese Methode nur bei Python-Versionen höher als 2.6 funktioniert.
Verwenden Sie den Dekorator @classmethod
, um eine statische Klasse in Python zu erstellen
Die @classmethod
kann eine Methode für die Klasse statisch machen und nicht für ihr Objekt. Es hat mehrere Vorteile gegenüber dem Dekorator @staticmethod
. Es funktioniert auch mit Unterklassen und kann den Klassenstatus ändern.
Es erfordert jedoch, dass ein obligatorisches Argument in der Methode namens cls
enthalten ist.
Siehe den folgenden Code.
class abc(object):
@classmethod
def static_method(cls):
print("Hi,this tutorial is about static class in python")
abc.static_method()
Ausgabe:
Hi,this tutorial is about static class in python
Verwenden einer Moduldatei zum Erstellen einer statischen Klasse in Python
In Python besteht die wahrscheinlich beste Möglichkeit, eine statische Klasse zu implementieren, darin, ein Modul zu erstellen. Wir können ein Modul importieren und auf seine Funktionen kann über den Modulnamen zugegriffen werden. Es erfordert keine Instanziierung von Objekten und kann nicht vererbt werden.
Siehe das folgende Beispiel.
def static_method():
print("Hi this is the content of the module file")
Der obige Code kann eine einfache Funktion in einem Python-Skript sein, das als Modul importiert werden kann.
Wenn der Name des obigen Python-Skripts beispielsweise abc.py
lautet, können wir etwas wie unten gezeigt tun.
import abc
abc.static_method()
Ausgabe:
Hi,this tutorial is about static class in python