五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

第九章 面向對象編程

2021-09-18 08:23 作者:海鷗之道  | 我要投稿

面向對象編程——Object Oriented Programming,簡稱OOP,是一種程序設計思想。OOP把對象作為程序的基本單元,一個對象包含了數(shù)據(jù)和操作數(shù)據(jù)的函數(shù)。

面向過程的程序設計把計算機程序視為一系列的命令集合,即一組函數(shù)的順序執(zhí)行。為了簡化程序設計,面向過程把函數(shù)繼續(xù)切分為子函數(shù),即把大塊函數(shù)通過切割成小塊函數(shù)來降低系統(tǒng)的復雜度。

而面向對象的程序設計把計算機程序視為一組對象的集合,而每個對象都可以接收其他對象發(fā)過來的消息,并處理這些消息,計算機程序的執(zhí)行就是一系列消息在各個對象之間傳遞。

在Python中,所有數(shù)據(jù)類型都可以視為對象,當然也可以自定義對象。自定義的對象數(shù)據(jù)類型就是面向對象中的類(Class)的概念。

我們以一個例子來說明面向過程和面向對象在程序流程上的不同之處。

假設我們要處理學生的成績表,為了表示一個學生的成績,面向過程的程序可以用一個dict表示:

而處理學生成績可以通過函數(shù)實現(xiàn),比如打印學生的成績:

如果采用面向對象的程序設計思想,我們首選思考的不是程序的執(zhí)行流程,而是這種數(shù)據(jù)類型應該被視為一個對象,這個對象擁有這兩個屬性(Property)。如果要打印一個學生的成績,首先必須創(chuàng)建出這個學生對應的對象,然后,給對象發(fā)一個消息,讓對象自己把自己的數(shù)據(jù)打印出來。

給對象發(fā)消息實際上就是調(diào)用對象對應的關聯(lián)函數(shù),我們稱之為對象的方法(Method)。面向對象的程序寫出來就像這樣:給對象發(fā)消息實際上就是調(diào)用對象對應的關聯(lián)函數(shù),我們稱之為對象的方法(Method)。面向對象的程序寫出來就像這樣:

面向對象的設計思想是從自然界中來的,因為在自然界中,類(Class)和實例(Instance)的概念是很自然的。Class是一種抽象概念,比如我們定義的Class——Student,是指學生這個概念,而實例(Instance)則是一個個具體的Student,比如,Bart Simpson和Lisa Simpson是兩個具體的Student。

所以,面向對象的設計思想是抽象出Class,根據(jù)Class創(chuàng)建Instance。

面向對象的抽象程度又比函數(shù)要高,因為一個Class既包含數(shù)據(jù),又包含操作數(shù)據(jù)的方法。

小結

數(shù)據(jù)封裝、繼承和多態(tài)是面向對象的三大特點,我們后面會詳細講解。


第九章 面向對象編程的評論 (共 條)

分享到微博請遵守國家法律
绿春县| 台安县| 彭泽县| 龙口市| 六枝特区| 祁东县| 遂川县| 巴彦县| 无极县| 邮箱| 安新县| 武定县| 临颍县| 庄河市| 高青县| 原平市| 儋州市| 延吉市| 贡觉县| 安阳县| 久治县| 南涧| 南安市| 和田市| 定南县| 永靖县| 蛟河市| 四川省| 图片| 万年县| 太保市| 青田县| 石渠县| 和林格尔县| 繁昌县| 海伦市| 邵东县| 莱芜市| 青州市| 阳山县| 罗甸县|