1. 程式人生 > >C++--面向對象的基本概念

C++--面向對象的基本概念

ani 演示 復用 面對對象 bio 必須 c++ bool 組成

面對對象的基本概念

面對對象的意義在於
1.將日常生活中習慣的思維方式引入程序設計中
2.將需求中的概念直觀的映射到解決方案中
3.以模塊為中心構建可復用的軟件系統
4.提高軟件產品的可維護性和可擴展性

類和對象使面對對象中的兩個基本概念
類:指的是一類事物,是一個抽象的概念
對象:指的是屬於某個類的具體實體
類是一種模型,這種模型可以創建處不同的對象實體
對象實體使類模型的一個具體實例
我們可以知道,一個類可以有多個對象,而一個對象必然屬於某個類,如下圖所示
技術分享圖片
日常生活中的類和對象技術分享圖片技術分享圖片
類和對象的意義:
A.類用於抽象的描述一類事物所特有的屬性和行為--如:電腦擁有CPU,內存和硬盤,並且可以開機和運行程序
B.對象是具體的事物,擁有所屬類中描述的一切屬性和行為--如:每一只老虎都有不同的體重,不同的食量

類之間的基本關系
A.繼承--從已存在類細分出來的類和原類之間具有繼承關系(is-a),繼承的子類擁有原類的所有屬性和行為
B.組合--一些類的存在必須依賴於其他類,這種關系的組合,組合的類在某一個局部上有其他的類組成
繼承的圖示
技術分享圖片
組合的圖示
技術分享圖片
類的表示方法的演示:
技術分享圖片技術分享圖片
代碼的實現:

#include <stdio.h>
struct Biology {
    bool living;
};
struct Animal : Biology {
    bool movable;
    void findFood() { }
};
struct Plant : Biology {
    bool growable;
};
struct Beast : Animal {
    void sleep() { }
};
struct Human : Animal {
    void sleep() { }
    void work() { }
};

int main()
{
    return 0;
}

小結:
A.面對對象是當今軟件開發的重要方法,類和對象是面對對象理論中的基本概念,類和對象均來源於日常生活中,每個類可以有多個對象,每個對象必然屬於某個類
B.類之間可以存在繼承關系或組合關系,繼承關系中子類擁有父類的一切屬性和行為,組合關系是類之間整體和部分的關系,類及類之間的關系可以有不同的表示法,編譯器對類的表示法有具體的要求

C++--面向對象的基本概念