Python super關鍵字用法

2021-09-29 11:48:24 字數 1395 閱讀 8144

使用super關鍵字,會按照繼承順序執行相應類中的方法,在沒有多繼承的情況下,一般是執行父類

# -*- coding: utf-8 -*-

#! /usr/bin/python

class

counter

(object):

def__init__

(self)

:super

(counter,self)

.__setattr__(

"counter",0

)def

__setattr__

(self, key, value)

:print

'emmm1'

,self.counter

super

(counter,self)

.__setattr__(

"counter"

,self.counter+1)

print

'emmm2'

,self.counter

super

(counter, self)

.__setattr__(key,value)

print

'emmm3'

,self.counter

def__delattr__

(self, item)

:print self.counter

self.counter -=

1print self.counter

super

(counter,self)

.__delattr__(item)

c=counter(

)c.x=

1c.y=

1del c.x

列印結果

emmm1 0

emmm2 1

emmm3 1

emmm1 1

emmm2 2

emmm3 2

2emmm1 2

emmm2 3

emmm3 1

1

思路分析

第一步,執行c=counter()

Python Super關鍵字子類繼承父類

參考 class father def init self print 這是父類的 class son father def init self father.init self print 這是子類的 son son 這是父類的 這是子類的注 在子類中呼叫父類方法時,要傳入self這一引數,相當於...

new關鍵字 this關鍵字 base關鍵字

使用new,所做的三件事 1.類是引用物件,引用物件是在堆中開闢空間 在堆中開闢空間 2.在開闢的堆空間中建立物件 3.呼叫物件的構建函式 4.隱藏父類成員 子類的成員可以與隱藏從父類繼承的成員,類似於重寫。public new void sayhello this關鍵字的使用 1.代表當前類的物件...

this關鍵字 static關鍵字

1.當成員變數和區域性變數重名,可以用關鍵字this來區分 this 代表物件,代表那個物件呢?當前物件 this就是所在函式所屬物件的引用 簡單說 那個物件呼叫了this所在的函式,this就代表哪個物件 this也可以用於在建構函式中呼叫其他建構函式 注意 只能定義在建構函式的第一行,因為初始化...