淺談你對面向對象編程的認識

面向對象編程強調抽象、封裝、繼承、多態

抽象:我們在定義一個抽象類的時候,實際上就是把一類事物共有的屬性和行爲提取出來,形成一個物理模型(模版),這種研究問題的方法稱爲抽象。你可以這樣來想,抽象就是一個類的最基礎的東西,比方說人,他的抽象類可能就是都從母體出來,有皮膚。但具體到你是黑人,白人,還得黑人類,白人類來說明 。

封裝:就是將類的屬性包裝起來,不讓外界輕易的知道他的內部實現。只提供給你對外的接口讓你來調用。好處可以增強模塊的獨立性。如設置屬性或方法的訪問權限(private、protected、public、默認)。

繼承:就是從父類把它的有用的東西拿過來自己用,不用在自己去實現了,像母親會把雙眼皮傳給女兒,不用她自己去割了 。

多態:一個對象變量可以指向多種實際類型的現象。一個人,在不同場合下,有不同的身份,不同的狀態。比如在家裏,你是父母的孩子;在學校,你就是學生;在公司,你就是老闆的職員。再比如在接口總定義一個run()方法,是什麼在跑,汽車還是馬?通過不同類的實現來表示相似的邏輯。

順便說一下重載和重寫(覆蓋)的區別:

重載:相同的方法名,不同的實現機制(通過傳入不同個數或類型的參數)。當程序運行過程中自己去判斷到底該調用誰。比方說打人,那麼多人,當你打起羣架來,該打誰就打誰,事前你也不知道。

重寫:從父類繼承而來的方法不能滿足需要的情況下,可以將此方法的邏輯在子類中重新實現。我們最常用的就是重寫toString()方法了。


原文鏈接處:http://blog.csdn.net/wang_159369/article/details/8241902

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章