物件變數為各物件自己所擁有,類變數所有物件所共有
class執行結果如下圖所示:circle:
cnt = 0 #
類變數#
__init__初始化物件
def__init__(self, radius = 15):
self.radius =radius
circle.cnt += 1oner =circle()
print('
圓的半徑:
', oner.radius)
print('
oner.cnt:
', oner.cnt)
twor = circle(13)
print('
圓的半徑:
', twor.radius)
print('
建立了{}個物件
'.format(twor.cnt))
print('
circle.__name__:
', circle.__name__
)print('
circle.__doc__:
', circle.__doc__
)print('
circle.__module__:
', circle.__module__
)print('
oner.cnt:
', oner.cnt)
print('
twor.cnt:
', twor.cnt)
類變數和例項變數的區別
類變數也叫靜態變數,也就是在變數前加了static 的變數 例項變數也叫物件變數,即沒加static 的變數 區別在於 static被修飾的變數和方法,為該整個類及其類的物件所共享,乙個類或物件修改了被定義的類或方法,其他的也會跟著變數。這就是說被static修飾的是大家共用的。而沒有修飾的屬性就相...
成員變數和類變數的區別
由static修飾的變數成為靜態變數,其實質上就是乙個全域性變數。如果某個內容是被所有物件所共享,那麼該內容就應該用靜態修飾 沒有被靜態修飾的內容,其實是屬於物件的特殊描述。不同的物件的是例項變數將被分配不同的記憶體空間,如果類的成員變數有類變數,那麼所有都物件的這個類變數都分配給相同的一處記憶體 ...
成員變數和類變數的區別
由static修飾的變數稱為靜態變數,其實質上就是乙個全域性變數。如果某個內容是被所有物件所共享,那麼該內容就應該用靜態修飾 沒有被靜態修飾的內容,其實是屬於物件的特殊描述。不同的物件的例項變數將被分配不同的記憶體空間,如果類中的成員變數有類變數,那麼所有物件的這個類變數都分配給相同的一處記憶體,改...