Python 類的繼承

2021-08-10 19:57:47 字數 2459 閱讀 3133

python中類的繼承,子類擁有繼承父類的方法和屬性,這一點上,與object-c中是一樣的,整體上python語法和object-c語法很想,但是swift與python這兩者是更像的語法上

class

parent:

# 定義父類

parentattr = 100

def__init__

(self):

print

"呼叫父類建構函式"

defparentmethod

(self):

print

'呼叫父類方法'

defsetattr

(self,attr):

parent.parentattr = attr

defgetattr

(self):

print

"父類屬性:",parent.parentattr

class

child

(parent):

# 定義子類

def__init__

(self):

print

"呼叫子類構造方法"

defchildmethod

(self):

print

'呼叫子類方法'

c = child() # 例項化子類

c.childmethod() # 呼叫子類的方法

c.parentmethod() # 呼叫父類方法

c.setattr(200) # 再次呼叫父類的方法 - 設定屬性值

c.getattr() # 再次呼叫父類的方法 - 獲取屬性值

上面說到繼承就不得不說重寫,子類繼承父類的方法,當然可以重寫父類的方法

其意義在於,在子類中執行不同的預算

lass parent:        # 定義父類

defmymethod

(self):

print

'呼叫父類方法'

class

child

(parent):

# 定義子類

defmymethod

(self):

print

'呼叫子類方法'

c = child() # 子類例項

c.mymethod() # 子類呼叫重寫方法

child繼承了parent類,並重寫了mymethod方法,

過載方法

先看一下方法

__init__ ( self [,args...] )

建構函式

簡單的呼叫方法: obj = classname(args)

__del__( self )

析構方法, 刪除乙個物件

簡單的呼叫方法 : del obj

__repr__( self )

轉化為供直譯器讀取的形式

簡單的呼叫方法 : repr(obj)

__str__( self )

用於將值轉化為適於人閱讀的形式

簡單的呼叫方法 : str(obj)

__cmp__ ( self, x )

物件比較

簡單的呼叫方法 : cmp(obj, x)

運算子過載

class

vector:

def__init__

(self, a, b):

self.a = a

self.b = b

def__str__

(self):

return

'vector (%d, %d)' % (self.a, self.b)

def__add__

(self,other):

return vector(self.a + other.a, self.b + other.b)

v1 = vector(2,10)

v2 = vector(5,-2)

print v1 + v2

類的私有屬性與私有方法

__private_attrs:兩個下劃線開頭,宣告該屬性為私有,不能在類的外部被使用或直接訪問。在類內部的方法中使用時 self.__private_attrs。

類的方法

在類的內部,使用 def 關鍵字可以為類定義乙個方法,與一般函式定義不同,類方法必須包含引數 self,且為第乙個引數

類的私有方法

__private_method:兩個下劃線開頭,宣告該方法為私有方法,不能在類地外部呼叫。在類的內部呼叫 self.__private_methods

python 類 繼承 python 類的繼承

1 所用的類都可以被繼承 2 沒有繼承其他類的類必然有乙個父類 object 3子類可以擁有父類的 init 裡的類容 派生子類除了父類的一些屬性,還會有自己的屬性和方法,這些就叫派生 如何使用 實現 class animal def init self,name,attack,hp self.na...

Python 類的繼承

有兩個模組 file1.py 和 file2.py file2中有個基類base def abc self return function abc and name self class base object def init self,name self.name name defrun sel...

python 類的繼承

1.python繼承父類,子類可以呼叫父類的方法,也可以呼叫自己的方法。class person object 定義乙個父類 def talk self 父類中的方法 print person is talking.class chinese person 定義乙個子類,繼承person類 def ...