SORU
16 EYLÜL 2008, Salı


Python statik sınıf değişkenleri

Python statik sınıf değişkenleri veya yöntem olması mümkün mü? Ne sözdizimi bunu yapmak için gereklidir?

CEVAP
16 EYLÜL 2008, Salı


Değişkenler sınıf tanımı içinde ilan etti, ama içinde bir yöntemi vardır sınıf veya statik değişkenler:

>>> class MyClass:
...     i = 3
...
>>> MyClass.i
3 

@millerdev belirttiği gibi, bu sınıf düzeyinde "ben" değişken, ama bu farklı gelen herhangi bir örnek düzeyi "var diye" değişken . bir oluşturur

>>> m = MyClass()
>>> m.i = 4
>>> MyClass.i, m.i
>>> (3, 4)

Statik bir üye erişilen bir örneği için bir başvuru kullanarak olamaz. bu C ve Java farklıdır, ama C den çok farklı değil#,

what the Python tutorial has to say on the subject of classes and class objects bkz.

@Steve Johnson zaten static methods de "Built-in Functions" in the Python Library Reference altında belgelenen hakkında bilgilendirdi.

class C:
    @staticmethod
    def f(arg1, arg2, ...): ...

@beidy önerir classmethodyöntemi sonra ilk argüman olarak bir sınıf türü alır, ama hala staticmethod bu yaklaşımın avantajları hakkında biraz kafam karışık gibi staticmethod,. Eğer çok varsa, o zaman muhtemelen fark etmez.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HTC

    HTC

    12 Ocak 2006
  • Modus Recordings

    Modus Record

    26 Kasım 2008
  • Tylerron

    Tylerron

    6 AĞUSTOS 2006