python物件導向

2022-01-31 17:52:38 字數 2290 閱讀 9572

一、封裝

#物件導向:封裝

class person:

def __init__(self,name,age):

"""建構函式,類被呼叫的時候自動被執行。可以用來封裝各種通用的引數等.

self:呼叫方法的呼叫者的物件是誰就是誰

"""self.name = name

self.age = age

self.gender = "man"

def show(self):

print("he is %s ,age: %s" %(self.name,self.age))

p1=person("xiaofan",20)

p1.show()

二、繼承

#物件導向:繼承

class f: #父類,基類

def f1(self):

print('f.f1 . self: %s' %self) # 呼叫父類要給他傳self ,要麼自動傳,要麼手動傳

def f2(self):

print('f.f2')

class s(f): # 子類 ,派生類 ,繼承自 f 。 先在自己的類中找,沒有再去父類中找

def s1(self):

print('s.s1')

def f2(self): #重寫

pass

def f3(self):

super(s,self).f2()

#方法1:執行父類中的f2方法 。 super(子類名,呼叫者self)

f.f2(self)

# 方法2:執行父類中的f2方法 。執行物件self自動建立,執行分類方法要自己給他傳self

print('s.f3')

a = s()

a.s1()

a.f1() # 執行父類方法

a.f2()

a.f3()

# python多繼承:

# 當父類中有相同的方法時,繼承順序優先順序從左到右,找到則停止

# 繼承關係: a -> b -> c , a -> d

# 繼承順序: 從左(左邊的所有)-->右

# 繼承關係:a -> b -> c -> z , a -> d -> e -> z

# 繼承順序:從左(最上面的z,不找)-->右 --> 最後才找z

#多繼承:

class basereuqest:

def __init__(self):

print('basereuqest.init')

class requesthandler(basereuqest):

def __init__(self):

print('requesthandler.init')

basereuqest.__init__(self)

def serve_forever(self):

print('requesthandler.serve_forever')

self.process_request()

#此處會呼叫哪個process_request()呢

# self,是obj , obj== 呼叫者 。 那麼肯定是執行minx中的process_request()的

# 注意看 self 是哪個類的物件,然後回到那裡去找

def process_request(self):

print('requesthandler.process_request')

class minx:

def process_request(self):

print('minx.process_request')

class son(minx, requesthandler):

pass

obj=son()

# 例項化son的物件,son()繼承minx,和requesthandler。

# 執行 requesthandler的初始化方法

obj.serve_forever()

# 執行requesthandler父類basereuqest的初始化方法

# 執行requesthandler的server_forever()

# 執行 minx的process_request() 方法

三、多型

#多型:傳入的引數不同型別執行的方法不一樣

#在python中不需要考慮多型,python原生就是多型的

python物件導向學習 python物件導向學習

物件導向最重要的概念就是類 class 和例項 instance 必須牢記類是抽象的模板,比如student類,而例項是根據類建立出來的乙個個具體的 物件 每個物件都擁有相同的方法,但各自的資料可能不同。物件導向三個概念 1.封裝 即把客觀事物封裝成抽象的類,並且類可以把自己的資料和方法讓可信的類進...

python物件導向總結 Python物件導向總結

python 物件導向 oop 1 物件導向 是乙個更大封裝,把乙個物件封裝多個方法 2 類 是對一些具有相同特徵或行為的事物的乙個統稱,是抽象的,不能直接使用 特徵被稱為屬性 行為被稱為方法 3 物件 是由類建立出來的乙個具體的存在,可以直接使用 先有類再有物件,類只有乙個,而物件可以有多個 類中...

python登入物件導向 python 物件導向

一 屬性和方法 1.a a 例項屬性 通過例項物件來新增的屬性就是例項屬性 a.count 10 例項方法都是在類中直接定義的 以self為第乙個引數的方法都是例項方法 當通過例項物件呼叫時,會自動傳遞當前物件作為self傳入 當通過類物件呼叫時,不會自動傳遞self a.test 等價於 a.te...