物件導向編程總結--Python,--python
萬物皆為對象。自然環境賦予人類無盡的遐想,而物件導向編程之思想就是來自於大自然。自然界,類和對象比比皆是,比如:鳥類和麻雀,魚和鯉魚......其中鳥類就是各種鳥的總稱,而麻雀只不過是其中之一(對象)。
何為面向過程?何為物件導向?這是編程界的“矛盾”之一。其實,我也傻傻分不清楚......只能拿喝酒來“開刀”。哦,不是拿它來舉個例子。
物件導向:
酒就是日常的生活飲品,酒就是一個抽象的class(類),“茅台”就是酒的具體對象,乾杯就是喝酒的執行方法。
class Drinking_wine(object):
def __init__(self,name):
self.name = name
def drinking():
拿起酒瓶
擰開酒蓋
倒酒
喝酒
然後調用類(Drinking_wine()):
maotai = Drinking_wine('茅台') shuijingfang = Drinking_wine('水井坊') maotai.drinking() shuijingfang.drinking()
面向過程:
拿起桌子上的酒瓶->擰開酒蓋->拿出酒杯->倒出酒->再端起酒杯->嘴出“兄弟,乾杯!”->酒杯相碰->一飲而盡
def Drinking_wine():
拿起酒瓶
擰開酒蓋
倒酒
喝酒
物件導向編程——Object Oriented Programming,簡稱OOP,OOP把對象作為程式的基本單元,一個對象包含了資料和操作資料的函數,是一種程式設計思想。
在Python中,所有資料類型(包括自訂對象)均可以視為對象。資料類型可以用type()識別。例如:
a = 4
type(a)
<class 'int'>
圖1 type用法樣本
特別地,在Python編程環境中,自訂對象的資料類型就是物件導向中的類。故而,物件導向編程的設計思想就是抽象出Class,然後根據類建立instance(執行個體),再由執行個體
調用函數。
物件導向編程總結如下:
1.物件導向的抽象程度又比函數要高,因為一個Class既包含資料,又包含操作資料的方法。
2.三大特點:繼承、多態和資料封裝
3.認識物件導向和面向過程之間的差異