C++中的面向對象(一)


1,本節課開始進入 C++ 中的面向對象,面向對象是 C++ 中最核心也是體現 C++ 價   值的一個部分;

 

2,日常生活當中我們都習慣對事物進行分類,那么這種分類的思想是否可以引入到 程序設計中?

    1,可以;

    2,面向對象就是將分類的思想直接引入到程序設計當中;

 

3,面向對象的意義在於:

    1,將日常生活中習慣的思維方式引入程序設計中;

       1,避免錯誤;

       2,順序、選擇、循環這三種 C 中的編程泛型不能滿足非科學計算中的軟件開發問題,引來了軟件災難;

    2,將需求中的概念直觀的映射到解決方案中;

       1,引起軟件災難的原因就是需求變更;

       2,少許的需求改變對應着少許的軟件更改;

       3,將分類的思想引入到軟件設計中,獲得成功,由此面向對象誕生;

    3,以模塊為中心構建可復用的軟件系統;

    4,提高軟件產品的可維護性和可擴展性;

   

4,類和對象是面向對象中的兩個基本概念:

    1,類:指的是一類事物,是一個抽象的概念;

       1,類是一個類別,抽象的;

    2,對象:指的是屬於某個類的具體實體;

    3,類是一種模型,這種模型可以創建出不同的對象實體;

       1,模型存在不一定存在實體;

       2,實體存在則一定存在模型;

    4,對象實體是類模型的一個具體實例;

   

5,一個類可以有很多對象,而一個對象必然屬於某個類;

  

    1,語言分為程序設計語言和自然語言兩個類;

    2,程序設計語言和自然語言又能夠分別分類;

 

6,生活中的類和對象:

  

    1,將分類思想帶入程序設計中,這很重要;

 

7,類和對象的意義:

    1,類用於抽象的描述一類事物所持有的屬性和行為;

       1,如:電腦有 CPU、內存和硬盤,並且可以開機和運行程序;

    2,對象是具體的事物,擁有所屬類中描述的一切屬性和行為;

       1,不同的對象屬性和行為上有差異;

       2,每一只老虎都有不同的體重,不同食量以及不同的性情;

       3,每一個子類對象都擁有父類的一切屬性和行為,因為其也屬於父類;

      

8,一些有趣的問題:

    1,類一定存在實際的對象嗎?

       1,不一定,純虛類;

       2,類是分別出來的,恐龍類就沒有對象;

    2,類的對象數目是確定的嗎?

       1,不一定;

       2,老虎的數目是不確定的;

       3,皇帝這個類對象數只有一個;

    3,類一定都來源於現實生活中嗎?

       1,不一定,純虛類;

    4,類都是獨立的嗎?類之間存在關系嗎?

       1,不都是獨立的,類之間可以繼承也可以組合;

    5,對象實例一定只屬於一個類嗎?

       1,不一定,其也屬於這個類的父類;

       2,多重繼承;

    6,對象實例可能完全相同嗎?

       1,不可能;

       2,不可能出現兩個完全相同的樹葉;

      

9,小結:

    1,面向對象是當今軟件開發中的重要方法;

    2,類和對象是面向對象理論中的基本概念;

    3,類和對象均來源於日常生活中;

    4,每個類可以有多個對象;

    5,每個對象必然屬於某個類;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM