Python變數訪問許可權控制

2021-09-24 09:23:15 字數 682 閱讀 1069

oop1.py檔案**

oop2.py檔案**

另外雙下劃線變數,類本身可以訪問__變數,但是在其它作用域不行

可以通過_classname__變數來訪問

在函式方法內,class內,沒有用self修飾的變數;【又為臨時變數,只在函式內部有效,obj不能訪問】

區域性變數:在函式方法內,class內,沒有用self修飾的變數;【又為臨時變數,只在函式內部有效,obj不能訪問】

例項變數:在class內的方法裡面,並且用self修飾的變數;【所有的例項變數和例項方法(有self引數的方法),都是obj的屬性,可以通過obj直接訪問】

靜態變數【類變數】:在class內,但是在class內的所有方法外的變數;【類變數的訪問和修改都需要用這種格式:類名.變數名,或者在使用前,使用global關鍵字宣告該變數(因為python在函式中會遮蔽類變數,如果不顯式指明,這個變數只會當做與類變數同名的區域性變數,從而出錯)】

如圖

python 許可權 Python變數訪問許可權控制

oop1.py檔案 user bin python class foo def bar self print ok def hello self,name print i am s name foo foo foo.bar foo.hello fred huang class foo def ini...

訪問許可權控制

控制訪問許可權的四個關鍵字 public,protected,預設,private 類僅可以用public或缺省來修飾。方法和成員變數四個關鍵字都可以。public 無論是誰,在 都可以訪問 protected 具有包訪問許可權,同乙個包目錄下的類可以訪問,或者子類 即使位於不同包下 可以訪問到由p...

訪問許可權控制

package語句必須是檔案中的第一行非注釋程式 假設存在類wjc.one.vector.wjc和wjc.two.vector.wjc,然後在main類中同時引入包wjc.one.和wjc.two.三中注釋行會編譯報錯 編譯器會無法識別是哪乙個vector 所以只能使用全路徑的方式使用vector類...