1. 程式人生 > >面對對象之私有屬性,以及單、雙下劃線 | Pythoon

面對對象之私有屬性,以及單、雙下劃線 | Pythoon

指定 src 防止 什麽 mage 對象 class .com img

#     在很多程序中會遇到__name,_name的標識符,在類中,如果屬性帶有雙
# 下劃線,表示私有屬性,通俗的講,就是不能在類命名空間外被直接調用,但是
# 可以通過方法來調用。
#     其實這種表述並不明確,為什麽不能被外部直接調用?
#     因為,在類被定義的時候,帶有雙下滑線的屬性,它的名字會自動發生改變:
#     樣式:_Classname__name
#     所以,無法直接通過obj.__name訪問到值;
#   作用:防止子類創建的對象與基類創建的對象出現命名空間沖突的問題;

技術分享圖片

#     單下劃線,其實這種標識符沒有什麽卵用,並不是其它博客上寫的隱藏屬性的
# 作用,也不能避免繼承中的命名空間沖突的問題,只是帶有單下劃線的模塊, # 不能通過from some_module import * 來導入,但是可以指定導入,比如 # from a_module import _b_module;

面對對象之私有屬性,以及單、雙下劃線 | Pythoon