15 NİSAN 2009, ÇARŞAMBA
Python ve __init__ devralmayı Geçersiz kılma
Okuma 'ile' dersleri ile ilgili bölüm bu örnek verir: . Python İçine Dalış yapıyordum
class FileInfo(UserDict):
"store file metadata"
def __init__(self, filename=None):
UserDict.__init__(self)
self["name"] = filename
Yazar, daha sonra ise __init__
yöntemini geçersiz kılmak isterseniz, açıkça üst doğru parametreleri ile __init__
araman gerektiğini söylüyor.
- Eğer
FileInfo
Bu sınıf birden fazla atası sınıf olsaydı?
- Açıkça üst sınıf'
__init__
yöntemleri? tüm aramalı mıyım
- Açıkça üst sınıf'
- Ayrıca, başka bir yöntemle bunu yapmak zorunda mıyım ben geçersiz kılmak ister misiniz?
CEVAP
15 NİSAN 2009, ÇARŞAMBA
Kitap biraz alt-üst arama açısından tarihli. Ayrıca, saygı ile, biraz tarih alt-dahili sınıflar için.
Bu artık böyle görünüyor.
class FileInfo(dict):
"""store file metadata"""
def __init__(self, filename=None):
super( FileInfo, self ).__init__()
self["name"] = filename
Aşağıdaki not.
Doğrudan yerleşik sınıflar, *8, *,
tuple
, **9 vb gibi alt edebiliriz.super
işlevi bu sınıfın superclasses izleme ve bunları uygun şekilde işlevlerini çağıran işler.
Bunu Paylaş:
Geçersiz kılma '' ın operatö...
() Anlayış Python süper __init__() yön...
Neden önemli GetHashCode yöntem geçers...
Neden't statik Java yöntemleri ge...
Geçersiz kılma ısequal en iyi uygulama...