python學習筆記(33) 封裝和property
阿新 • • 發佈:2018-11-05
父類的私有屬性不能被子類呼叫
會用到私有的場景:
1.隱藏起一個屬性不想讓類的外部呼叫
2.想保護一個屬性不想讓屬性隨意被改變
3.想保護這個屬性不被子類繼承
#########################################
property內建裝飾器函式,只在面向物件中使用
把類中的方法偽裝成屬性
@property
def name1(self):
return self.__name + 'sb'
@name1.setter #用於修改物件,三個名字必須一致
def name1(self,new_name):
self.__name = new_name
############################################
self.__price = price
@property #用於輸出處理過的price
def price():
return self.__price * Goods.discount
print(apple.price)
###########################################
@property
def name1(self):
return self.__name + 'sb'
@name1.deleter #用於在外部刪除私有物件,三個名字必須一致
def name1(self):
del self.__name
del apple.name #del命令觸發@deleter裝飾的方法