1. 程式人生 > >面向對象的思想

面向對象的思想

處理 spa 兩個類 如何工作 統一 關系 實例 什麽 給他

一句話說明什麽是面向對象?你個土鱉,你們全家都是土鱉!

好像有人說過這樣的話,當頭棒喝的方式雖然情感上不易接受,但記憶效果十分顯著。

好吧,如果你覺得“土鱉”實在難聽也不能準確定位你的檔次,你可以自行將其替換為“土豪”,whatever。

面向對象思想有三大要素:封裝、繼承和多態。

  • 封裝:不管你是土鱉還是土豪,不管你中午吃的是窩頭還是鮑魚,都在你肚皮裏,別人看不到你中午吃了啥,除非你自己說給他們聽(或者畫給他們看,whatever);
  • 繼承:剛說了,你個土鱉/豪,你們全家都是土鱉/豪。冰凍三尺非一日之寒,你有今天,必定可以從你爸爸爺爺那裏追根溯源。正所謂虎父無犬子,正恩同學那麽狠,他爹正日就不是什麽善茬,更甭說他爺爺日成,明白了嗎?
  • 多態:哲學家說過,世上不會有兩個一模一樣的雙胞胎。即使你從你父親那裏繼承來的土鱉/豪氣質,也不可能完全是從一個模子裏刻出來的,總會有些差別。比如你爸喜歡蹲在門前吃面,你喜歡騎在村口的歪脖子樹上吃,或者反過來。當然,也可能令尊愛吃龍蝦鮑魚時旁邊有幾個藝校小女生喝酒唱歌助興,你可能更喜歡弄個街舞樂隊來吹拉彈唱。

話醜理端,現在明白了嗎?希望沒有傷害到你幼小的心靈,嘿嘿。

或者這樣理解:

一.封裝

  封裝是面向對象編程的核心思想,將對象的屬性和行為封裝起來,而將對象的屬性和行為封裝起來的載體就是類,類通常對客戶隱藏其實現細節,這就是封裝的思想。例如,用戶使用電腦,只需要使用手指敲擊鍵盤就可以實現一些功能,用戶無須知道電腦內部是如何工作的,即使用戶可能碰巧知道電腦的工作原理,但在使用電腦時並不完全依賴於電腦工作原理這些細節。

二.繼承

  類與類之間同樣具有關系,如一個百貨公司類與銷售員類相聯系,類之間這種關系被稱為關聯。關聯是描述兩個類之間的一般二元關系,例如一個百貨公司類與銷售員類就是一個關聯,再比如學生類以及教師類也是一個關聯。兩個類之間的關系有很多種,繼承是關聯中的一種。

三.多態

  多態性允許以統一的風格編寫程序,以處理種類繁多的已存在的類以及相關類。該統一風格可以由父類來實現,根據父類統一風格的處理,就可以實例化子類的對象。由於整個事件的處理都只依賴於父類的方法,所以日後只要維護和調整父類的方法即可,這樣降低了維護的難度,節省了時間。

在提到多態的同時,不得不提到抽象類和接口,因為多態的實現並不依賴具體類,而是依賴於抽象類和接口。

面向對象的思想