1、面向物件的設計思想
面向物件是基於萬物皆物件這個哲學。
2、面向物件和麵向過程的區別
面向過程
在生活中:它是一種看待問題的思維方式,在思考問題的時候,著眼問題是怎樣一步一步解決的,然後親力親為去解決問題(類似於公司裡的執行者)。 在程式中:程式碼是從上而下順序執行,各個模組之間的關係儘可能簡單,在功能上相對獨立,程式的流程在寫程式的時候就已經決定了。
面向物件
在生活中:它是另一種看待問題的方式,它著眼於找到一個具有特殊功能的個體,然後委託這個個體去幫你完成某件事。這是更符合人類思考習慣的思想(就像公司裡的指揮者)。
在程式中:把資料以及對資料的操作方法放在一起,作為一個相互依存的整體(物件);把同類的物件進行抽象出其共性,形成類,就是面向物件程式設計。
類的特點有:
1、類中大多數資料,只能用本類的方法進行處理;
2、類透過一個簡單的外部介面與外界發生關係;
3、物件與物件之間透過訊息進行通訊; 使用面向物件思想進行開發,需要先找到具有所需功能的物件來使用,如果這個物件不存在,那麼則需要建立這麼一個具有所需功能的物件。
注意:面向物件只是一種思想,並不是一門程式語言。
面向過程與面向物件區別總結
a。 都是看待問題的一種思維方式,都能解決問題;
b。 面向過程著眼於所有的事情親力親為;
c。 面向物件著眼於找到一個具有特殊功能的物件,委託這個物件實現你需要實現的功能。
d。 面向物件程式執行的流程由使用者在使用的過程中決定,而面向過程則是按順序執行。
想了解更多精彩內容,快來關注一支穿雲
3、類和物件
類和物件的概念
類:一個具有特殊功能的實體的集合(群體)。
物件:在一個類中,一個具有特殊功能的實體,能夠幫忙解決特定的問題,物件通常也被稱為例項。
兩者之間的關係:類用於描述某一物件的共同特徵,而物件則是類的具體存在。類是物件的抽象,物件是類的具體體現。舉例:
學生:張三、李四。在這裡學生就是類,張三、李四就是物件。
快遞:順豐、韻達。在這裡快遞就是類,順豐、韻達就是物件。
類是一種資料型別,只不過是自己定義的,就像number,string等,它本身並不佔用空間,但是它的例項(物件)是佔用空間的。
類的設計只需要關心3樣東西:
1、事物名稱[類名]: 如人類 (Person);
2、特徵(屬性): 如身高(height) 年齡(age)等 (名詞);
3、行為(方法): 如跑(run) 說話(say)(動詞)。
方法和屬性的定義
生活中描述事物的無非就是描述事物的特徵和行為。python中用類來描述事物也是如此,前面已經定義了類,但是,如果只有類單獨存在沒有任何意義,所以定義類其實就是定義類中的成員(成員變數和成員方法)。在類中的變數我們稱之為成員變數,在類中的方法我們稱之為成員方法(函式)。
成員變數:類具有的特徵 ,例如:人有身高、性別、體重等特徵。
成員方法:類具有的行為 ,例如人會做吃喝玩樂等行為。
因此,擁有相同的(或者類似)屬性和行為的物件都可以抽取出一個類。
面向物件有三個重要的特性:
封裝
、
繼承
、
多型
。你知道他們各是什麼意思嗎?歡迎在評論區留言。