日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

C++面向對象開發的四大特性:封裝、抽象、繼承、多態

 

1、封裝

封裝,即隱藏對象的屬性和實現細節,僅對外公開接口,控制程序對類屬性的讀取和修改。

  • 對于類的內部,成員函數可以自由修改成員變量,進行更精確的控制;
  • 對于類的外部,良好的封裝能夠減少耦合,同時隱藏實現細節。

C++類成員的三種訪問權限:public/protected/private

試想如果對類中成員變量的訪問不做限制,那任何代碼都可以訪問、修改,雖然這樣看起來更加靈活,但也意味著不可控,成員變量可以隨意被修改,而且修改邏輯可能在代碼中的各個角落,影響代碼的可讀性、可維護性。

2、抽象

抽象包括兩個方面,一是數據抽象,二是過程抽象。

  • 數據抽象,關注于目標的特性信息;
  • 過程抽象,關注于目標的功能是什么,而不是功能是怎么實現的。

比如對于“學生”這個對象,其目標特性信息包括:學校、年級、班級、學號、成績等;其功能包括:學習、運動、繪畫、考試、比賽等。

封裝主要講的是隱藏信息、保護數據,而抽象講的是隱藏方法的具體實現。

類的方法主要通過“函數”這一語法機制來實現的。通過函數包裹具體的實現邏輯,這本身就是一種抽象。調用者在使用函數的時候,并不需要去研究函數內部的實現邏輯,只需要通過函數的命名、注釋或者文檔,了解其提供了什么功能,就可以直接使用了。

C++面向對象開發的四大特性:封裝、抽象、繼承、多態

 

3、繼承

繼承,即子類繼承父類的特征和行為,使得子類具有父類的成員變量和方法。

C++類的三種繼承方式:public/protected/private

從繼承關系上來講,繼承可以分為兩種模式,單繼承和多繼承。

  • 單繼承表示一個子類只繼承一個父類;
  • 多繼承表示一個子類可以繼承多個父類。

繼承最大的一個好處就是代碼復用。假如兩個類有一些相同的屬性和方法,我們就可以將這些相同的部分,抽取到父類中,讓兩個子類繼承父類。這樣,兩個子類就可以重用父類中的代碼,避免代碼重復寫多遍。不過,過度使用繼承,繼承層次過深,也會導致代碼可讀性、可維護性變差。

4、多態

多態,即同一個行為具有多個不同表現形式或形態的能力。表現形式有覆蓋和重載。

 

  • 覆蓋是指子類重寫從基類繼承過來的函數,函數名、返回值、參數列表都必須和基類相同。當子類的對象調用成員函數的時候,如果成員函數有被覆蓋則調用子類中覆蓋的版本,否則調用從基類繼承過來的函數。
  • 重載指在相同作用域中存在多個同名的函數,這些函數的參數表不同,編譯器根據函數不同的形參表對同名函數的名稱做修飾,然后這些同名函數就成了不同的函數。

分享到:
標簽:面向對象 開發
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定