學習筆記17 Python 繼承

2021-10-09 04:22:48 字數 3095 閱讀 4615

class 類名(父類名)

:

class

animal

:def

eat(self)

:# 在類中定義方法時,若該方法不涉及對屬性的操作

print

("吃"

)# pycharm會認為該方法是乙個靜態方法,而不是類方法

defdrink

(self)

:print

("喝"

)def

run(self)

:print

("跑"

)def

sleep

(self)

:print

("睡"

)class

dog(animal)

:def

bark

(self)

:print

("吠"

)class

xiaotianquan

(dog)

:def

fly(self)

:print

("飛"

)class

cat(animal)

:def

catch

(self)

:print

("抓"

)x = xiaotianquan(

)x.sleep(

)x.bark(

)x.fly(

)

1) 覆蓋父類的方法
class

animal

:def

eat(self)

:print

("吃"

)def

drink

(self)

:print

("喝"

)class

dog(animal)

:def

bark

(self)

:print

("吠"

)class

xiaotianquan

(dog)

:def

fly(self)

:print

("飛"

)def

bark

(self)

:print

("哮天犬叫得不一樣"

)x = xiaotianquan(

)# 如果在子類中,重寫了父類的方法

# 在使用子類物件呼叫方法時,會呼叫子類中重寫的方法

x.bark(

)

2) 對父類方法進行 擴充套件
classa:

def__init__

(self)

: self.num1 =

100 self.__num2 =

200# 私有屬性

def__test

(self)

:print

("私有方法 %d %d"

%(self.num1, self.__num2)

)def

test

(self)

:print

("公有方法 %d %d"

%(self.num1, self.__num2)

)# 公有方法訪問私有方法

self.__test(

)class

b(a)

:def

demo

(self)

:# 子類物件 不能直接訪問父類的私有屬性

# print("訪問父類的私有屬性 %d " % self.__num2)

# 子類物件 不能直接呼叫父類的私有方法

# self.__test()

self.test(

)x = b(

)x.demo(

)

class 子類名(父類名1

, 父類名2..

.)pass

classa:

deftest

(self)

:print

("test 方法"

)classb:

defdemo

(self)

:print

("demo 方法"

)class

c(a, b)

:# 多繼承可以讓子類物件,同時具有兩個父類的方法和屬性

pass

hh = c(

)hh.test(

)hh.demo(

)

classa:

deftest

(self)

:print

("a test 方法"

)def

demo

(self)

:print

("a demo 方法"

)classb:

deftest

(self)

:print

("b test 方法"

)def

demo

(self)

:print

("b demo 方法"

)class

c(a, b)

:# 多繼承可以讓子類物件,同時具有兩個父類的方法和屬性

pass

hh = c(

)hh.test(

)hh.demo(

)

print

(c.__mro__)

輸出結果
(

<

class

'__main__.c'

>

,<

class

'__main__.a'

>

,<

class

'__main__.b'

>

,<

class

'object'

>

)

17 python 網路程式設計

tcp連線的斷點是由乙個ip位址和乙個埠號來唯一標識的 客戶端 伺服器 客戶端總是最開始申請連線的一端,伺服器則是等待客戶端連線的一段 伺服器的埠號如果不是特殊用土的一般應該大於1024,客戶端則由作業系統隨機挑選乙個埠號 建立乙個socket物件 s socket.socket 獲得計算機名 ho...

C 學習筆記17 繼承

繼承 物件導向中的繼承指類之間的父子關係 子類擁有父類的所有成員變數和成員函式 子類就是一種特殊的父類 子類物件可以當作父類物件使用 子類可以擁有父類沒有的方法和屬性 繼承時候的訪問級別設定會影響到成員的訪問級別 class child parent 等價於class child private p...

C 學習筆記 (17)繼承

類的繼承或類的派生 把類按照其之間的關係組成的層次結構,稱之為類的繼承或類的派生。基類和派生類 水果是一種基類,桃 梨 蘋果是派生類 派生類可以繼承基類裡的屬性 欄位和方法,然後加上自己特殊的屬性 欄位和方法。派生的語法格式 類修飾符 class 派生類名 基類名 訪問控制問題public 都可以訪...