天天看點

Python-面向對象程式設計進階

一.全局類變量

1.類變量,全局變量,在記憶體中隻存儲一份;

2.普通的對象屬性,每個對象中都需要存儲一份;

設定country為預設變量值為China

<a href="https://s1.51cto.com/wyfs02/M00/A4/A1/wKioL1mun2qROOgXAADb7RRMb_w544.png" target="_blank"></a>

設定country=‘china’為全局類變量

<a href="https://s5.51cto.com/wyfs02/M01/A4/A1/wKioL1mun2yQ5T7hAAEFb8UlRXo755.png" target="_blank"></a>

全局變量位址與得出的結果變量位址一緻

<a href="https://s5.51cto.com/wyfs02/M02/05/F0/wKiom1mun4qR5yOzAAEiGfrPZAM369.png" target="_blank"></a>

二.方法

1.執行個體化方法:第一個參數為self(執行個體化本身);

<a href="https://s3.51cto.com/wyfs02/M00/A4/A1/wKioL1muoO-A17GsAABnSRz3Ux0193.png" target="_blank"></a>

<a href="https://s1.51cto.com/wyfs02/M02/05/F0/wKiom1muoYzhN90PAAAzmekq45c074.png" target="_blank"></a>

<a href="https://s1.51cto.com/wyfs02/M00/05/F0/wKiom1muoYzgGZkiAAASDBdX6Ao972.png" target="_blank"></a>

2.類方法:第一個參數是cls(類本身);通過@classmethod裝飾器實作;

使用類方法:

<a href="https://s3.51cto.com/wyfs02/M01/A4/A1/wKioL1muoO-wdDhFAAD4Ha4UAxc813.png" target="_blank"></a>

(2)子類裡的方法,類方法适用于單個類

<a href="https://s1.51cto.com/wyfs02/M00/A4/A1/wKioL1muod7wnYg_AADIQbeoTZI605.png" target="_blank"></a>

(3)date1 = cls(year,mouth,day)其實是個執行個體化對象

        date1每回的值位址不一樣

<a href="https://s1.51cto.com/wyfs02/M01/05/F0/wKiom1muofuC2gClAABNjwrFQUU226.png" target="_blank"></a>

<a href="https://s1.51cto.com/wyfs02/M00/05/F0/wKiom1muofzxDvKRAAB3n6jTFpg497.png" target="_blank"></a>

3.靜态方法:第一個參數既不是self也不是cls;通過@staticmethod方法實作;

<a href="https://s4.51cto.com/wyfs02/M02/05/F1/wKiom1muqVjwGAnqAAE_kWhk-GE072.png" target="_blank"></a>

兩種結果:

<a href="https://s1.51cto.com/wyfs02/M01/A4/A1/wKioL1muozeRAMdpAABYo6t0Y70284.png" target="_blank"></a>

<a href="https://s1.51cto.com/wyfs02/M02/05/F0/wKiom1muo1SCUIfTAABLdZRFTKA890.png" target="_blank"></a>

三.特殊屬性

裝飾器@property添加與不添加實作以下程式

例1:檢視哪一頁的資料庫顯示     預設每頁顯示的資料條數=10(兩種方法實作)

<a href="https://s2.51cto.com/wyfs02/M01/A4/A1/wKioL1muo4axOpFHAAC9ZrB-UQ4345.png" target="_blank"></a>

<a href="https://s2.51cto.com/wyfs02/M00/05/F0/wKiom1muo6TR14sDAAC_qIQ1DyY361.png" target="_blank"></a>

例2:一件物品老價錢100,打7折,重新更改價錢為200,打7折後140

<a href="https://s3.51cto.com/wyfs02/M01/A4/A1/wKioL1mupC2wWAw1AACn8Shv88I369.png" target="_blank"></a>

<a href="https://s3.51cto.com/wyfs02/M00/05/F0/wKiom1mupEqxE4kGAABQgRM9oe0683.png" target="_blank"></a>

利用内置函數實作

<a href="https://s5.51cto.com/wyfs02/M01/05/F1/wKiom1mupU_T55pjAADdzL2L0BM037.png" target="_blank"></a>

四.類的特殊成員

<b>      本文轉自一百個小排 51CTO部落格,原文連結:http://blog.51cto.com/anfishr/1962941</b><b>,如需轉載請自行聯系原作者</b>

<b></b>