joi, 7 mai 2009

Python si metod statice

Tinand cont ca am fost nevoit sa invat Python la noul loc de munca, am descoperit cateva elemente care se implementeaza un pic mai ciudat decat in Java. Unul din aceste exemple ar fi metodele statice.

In Java, o metoda statica se implementeaza in felul urmator:

public static void helloWorld() { System.out.println("Salutari"); }

In python lucrurile sunt mai complicate si depinde si de versiune folosita. De exemplu, daca folosim o versiune de python anterioara 2.4 atunci vom defini o metoda statica in felul urmator:

def helloWorld(cls):
print("Salutari")

helloWorld = classmethod(helloWorld)

Daca folosim o versiune mai noua de python lucrurile se simplifica deoarece putem folosi un decorator.
@staticmethod
def helloWorld(cls):
print("Salutari")

In ambele cazuri lucrurile sunt mai putin lizibile decat in Java. Oricum, asta este modul de a defini/folosi functii/metode statice in Python.

Niciun comentariu:

Trimiteți un comentariu