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

  • Bad Lip Reading

    Bad Lip Read

    22 Mart 2011
  • ItZWaffleS420

    ItZWaffleS42

    9 EYLÜL 2011
  • Le Cargo !

    Le Cargo !

    24 HAZİRAN 2007