Python 基礎 09 物件導向2

2021-10-11 13:59:49 字數 2735 閱讀 9664

"""

繼承: 子類繼承父類,子類一旦繼承父類,就擁有父類中非私有的屬性和方法

繼承的格式:

class 子類名(父類名):

子類中的**

繼承的優點:

1. 避免了**的重複,提高了**的重複使用率

2. 擴充套件了子類的功能

"""class

obj_1

:def

__init__

(self, func1, func2)

: self.func1 = func1

self.func2 = func2

defmethod

(self)

:print

(f"具有功能和功能"

)class

obj_2

(obj_1)

:pass

obj2 = obj_2(

"鏈路聚合"

,"dhcp"

)obj2.method(

)

"""

object類:

是所有類的父類,任何乙個類都是預設繼承object類

"""obj =

object()

# class obj_3:

# pass

# 等價

class

obj_3

(object):

pass

class

obj_1

:def

__init__

(self, func1, func2)

: self.func1 = func1

self.func2 = func2

self.__prifunc =

"視覺化"

defmethod

(self)

:print

(f"具有功能和功能"

)def

__primethod

(self)

:print

(f"功能"

)class

obj_2

(obj_1)

:# 不能繼承父類的私有方法

defprint_pri

(self)

: self.__primethod(

)obj2 = obj_2(

"鏈路聚合"

,"dhcp"

)# 不能繼承父類的私有方法,執行會報錯

obj2.print_pri(

)

"""

重寫父類中方法的原因:

父類中的方法不能滿足子類的需要,但是子類又想保留這個方法名

重寫父類中的方法:

需要在子類中定義乙個同名的方法,重寫父類中的方法

如何重寫:

1. 把父類中的方法複製貼上到子類中

2. 在子類中修改方法體

特點: 子類重寫了父類中的方法後,當通過子類物件呼叫這個方法時,呼叫的就是子類中的這個方法

"""class

obj_1

:def

__init__

(self, func1, func2)

: self.func1 = func1

self.func2 = func2

defmethod

(self)

:print

(f"具有功能和功能"

)class

obj_2

(obj_1)

:def

method

(self)

:print

(f"正在研發功能和功能"

)obj2 = obj_2(

"鏈路聚合"

,"dhcp"

)obj2.method(

)

"""

呼叫父類中的method方法,有三種格式:

1. 父類名.方法名(self, 實參1, 實參2, ……)

2. super(子類名, self).方法名(實參1, 實參2, ……)

3. super().方法名(實參1, 實參2, ……)

"""class

obj_1

:def

__init__

(self, func1, func2)

: self.func1 = func1

self.func2 = func2

defmethod

(self)

:print

(f"具有功能和功能"

)class

obj_2

(obj_1)

:# 方法1

# def old_method(self):

# obj_1.method(self)

# 方法2

# def old_method(self):

# super(obj_2, self).method()

# 方法3

defold_method

(self)

:super()

.method(

)obj2 = obj_2(

"鏈路聚合"

,"dhcp"

)obj2.old_method(

)

Python基礎 09 物件導向

1.基本格式和使用 類 class 類名 塊物件 物件名 類名 2.組成 2.屬性 特徵 例項屬性 修改 類外面 例項物件.屬性名 值 類裡面 self.屬性名 值 獲取 類外面 物件名.屬性名 類裡面 self.屬性名 類屬性 歸屬於類物件的屬性,所有物件共有的屬性 類屬性只能通過類物件修改,不能...

Day09 物件導向 2

含義 與類名形同,且沒有返回項的方法 作用 建立物件 new 構造方法 建立物件 初始化資料 注意 沒有引數的構造方法叫做無參構造,當沒有其他有參構造時,系統會預設實現 構造方法 vs 普通方法 成員方法和靜態方法 構造方法 必須和類名相同且沒有返回項 普通方法 必須有返回項 不管是返回具體的值還是...

python基礎 13 物件導向2

定義乙個類物件,並將其實例化。對不同的例項物件,我們可以手動定義不同的屬性值 class person def speak self print 你好,我是 s self.name p1 person p2 person p3 person p1.name 鋼鐵俠 p2.name 蜘蛛俠 p1.sp...