面向對象的三大特性之封裝

封裝

'''
封裝: 對外隱藏類中一些屬性與方法的實現細節

優勢:外界不能直接訪問,讓內部的屬性與方法具備安全保障
'''

class A:
   # 類的屬性:__開頭的屬性,在外界不能經過 cord | __cord 直接訪問:對外隱藏了
   __cord = '01012300'

   # 類的方法:__開頭的方法,在外界不能經過 get_money | __get_money 直接訪問:對外隱藏了
   @classmethod
   def __get_money(cls):
       print('輸入密碼,取出100w零花錢')
   
   # 對象的方法:通常的實現需求都是,這些方法只在內部使用
   def __test(self):
       pass
   
   # 對象的屬性:封裝目的
   # 1.對象的屬性值通常都來源於外界,外界是有權力再次訪問的
   # 2.封裝的目的不是讓外界沒法訪問,並且不讓其直接訪問,能夠在完成安全處理後再訪問
   # 3.如何作到外界仍是經過變量名來對屬性進行取值賦值,可是是走的方法間接拿到的值
   #       -- __money被封裝,外界仍是能夠經過 對象.money 取值賦值
   def __init__(self, money)
      self.__money = money
       
   # 取值
   @property  # 在外界能夠 對象.money 進行取值
   def money(self):
       # print('走方法拿到的money')
       return self.__money

   # 賦值
   @money.setter  # 在外界能夠 對象.money = 新值 進行賦值
   def money(self, money):
       self.__money = money

   # 刪除
   @money.deleter
   def money(self):
       del self.__money
# 重點:
# 1.封裝的語法與原理
# 2.封裝的目的
# 3.對象屬性的封裝對外提供操做接口的手段
相關文章
相關標籤/搜索