1. 程式人生 > >偽私有屬性 | 偽私有方法 | Python

偽私有屬性 | 偽私有方法 | Python

創建 span pre pri nac 獲取 對象 屬性 acc

        1.私有屬性
            # 在屬性前加上雙下劃線
            # 為了保護屬性安全
            # 私有屬性無法直接通過對象調用,需要添加一個調用方法來調用;
            class People(object):
                def __init__(self):
                    self.__name = Mic
                
                def get_private_attr(self, new_name):
                    self.
__name = new_name print(self.__name) # 創建對象 p = People() # 獲取私有屬性 p.get_private_attr(Lily) print(p.__name) 2.私有方法 # 同樣的,調用需要用另一方法來調用私有方法; class People(object): def __init__
(self): self.__name = Mic def __get_name(self): print(self.__name) def get_name(self): self.__get_name() p = People() # p.__get_name() p.get_name()
------------------------------------------------->>> 偽私有 # !!! 其實python的類是沒有權限控制的,所謂的雙下劃線表示私有,其實是可以訪問的; class Private(object): def __inaccesible(self): print(你訪問不到) def inaccesible(self): print(其實你看的到) self.__inaccesible() p = Private() # p.__inaccesible() # p.inaccesible() p._Private__inaccesible() >>> 你訪問不到 class Private(object): def __init__(self): self.__name = Mic def get_name(self): print(self.__name) p = Private() # print(p.__name) # p.get_name() print(p._Private__name) >>> Mic

偽私有屬性 | 偽私有方法 | Python