一、什麼是物件導向程式設計
物件是乙個抽象的概念,萬事萬物都是物件
例如人有年齡,姓名,身高體重,**號碼........這些屬性組成了人這個物件
車,生產廠家,汽車品牌型號,**,里程數,耗油量...這也組成了乙個物件
物件導向程式設計就是將這些屬性打包成乙個類來表示。
二、物件導向**應該如何編寫
a、規則
class 類名: # 定義了乙個類
def __init__(self,*args,**kwargs) #這也是"方法"
self.*args=arg #例項變數
self.**kwargs=kwarg
def 函式名(self): # 在類中編寫了乙個"方法"
pass
呼叫: x1 = 類名() # 建立了乙個物件/例項化乙個物件
x1.函式名() # 通過物件呼叫其中乙個方法.
b、什麼時候寫?
當函式中有大量的公共值時可以進行歸類
提取公共值
2、構造方法
構造方法的目的是進行資料初始化,通過構造方法,可以將資料進行打包,以後使用時,取其中獲取即可
3、 應用
將資料封裝到物件中,以供自己在方法中呼叫
將資料封裝到物件中,以供其他函式呼叫
三、物件導向的三大特性
1、封裝
將相關功能封裝到乙個類中
將資料封裝到乙個物件中
#1
class message:
def email(self):
pass
def msg(self):
pass
def wechat(self):
pass
#2class person:
def __init__(self,name,age,gender):
self.name=name
self.age=age
self,gender=gender
foo=person("一二三",25,「男)
2、繼承
1、繼承編寫
class son(父類):
pass
2、支援多繼承(現在自己的類中找,沒有就去父類中找)
3、為什麼要有多繼承?是為了提供**的重用性
3、多型:多種形態或多種狀態
鴨子模型:
def func(args):
pass
func(args)#arg有多種形態
四、函式式程式設計與物件導向程式設計的對比
1、對比:
函式:定義簡單/呼叫簡單
物件導向:定義複雜/呼叫複雜 好處:歸類,將某些類似的函式寫在一起
總結:1. 函式式程式設計可能會比物件導向好.
2. python中支援兩種程式設計方式.
物件導向程式設計(一)
1 什麼是物件導向 面向將系統看成通過互動作用來萬恆特定功能的物件的集合。每個物件用自己的方法來管理資料。也就是說只有物件內部的 能夠操作物件內部的資料 2 物件導向的優點 通過,繼承 封裝 多型降低程式的耦合度,並結合設計模式讓程式更容易修改和擴充套件,並且易於復用。3 物件導向的特點 封裝 維護...
物件導向程式設計(一)
var book function id,bookname,price var book function function book newid,newname,newprice this.getname function this.getprice function this.setname f...
物件導向程式設計(一)
對於某個函式,如果我們希望在不改變該函式 的前提下,為該函式增加額外的功能,那麼就可以使用函式裝飾器來裝飾該函式。def notice func print 公告 print 請注意!return func args,kwargs notice 相當於add notice add def add a...