class Child(object):
def __init__(self):
self.name = 'zhou'
def fun2(self):
print 'fun1'
class Student(Child):
__slots__ = ('name', 'id')
id = 1
def __init__(self):
print 'init student'
self.name = 'junjie'
stu = Student()
slots 限制了類的屬性,我測試了一下试吁,slots是限制了類里的成員變量楼咳,沒有限制類里的類方法和類變量。
還有一點是余耽,如果只在子類使用slots那么父類和子類的成員變量則不會被限制苹熏。就是如果slots只用在子類是無效的。
后面我執(zhí)行了super(Child, self)后轨域,slots里的限制生效了。
所以我猜測必須執(zhí)行了父類的solts朱巨,該方法才會有效枉长。