1. 程式人生 > >1 C++語言(12)——面向物件

1 C++語言(12)——面向物件

面向物件

面向物件的意義:

(1)將生活中習慣的思維方式引入程式設計中,
(2)將需求中的概念直觀的對映到解決問題的方案中將生活中習慣的思維方式引入程式設計中
(3)以模組為重心構建可複用的軟體系統
(4)提高軟體產品的可維護性和可擴充套件性

類和物件

類:指的是一類事物,是一個抽象的概念,是一種模型,這種模型可以創建出不同的物件實體
物件:指的是屬於某個類的具體實體,是類模型的一個具體實體
(1)一個類可以有很多個物件,而一個物件必然屬於某個類
(2)類用於抽象的描述一類事物所具有的屬性和行為
物件是具體的事物,擁有所屬類中描述的一切屬性和行為
(3) 類不一定存在物件,如恐龍
類的物件數目是不確定的
類大多來源生活,但也可以來源於想象
類之間並非是相互獨立的,而是相互聯絡
一個物件例項可能屬於不同的類,如蝙蝠(鳥類+哺乳類)

類之間的基本關係

繼承

從已存在的類細分出來的類和原類之間具有繼承關係,如老虎和東北虎
原來已存在的類稱為父類,細分出的類稱為子類
子類擁有父類的所有屬性和行為

組合

(1)一些類的存在必須依賴於其他的類,這種關係叫組合
(2)組合的類在某一個區域性上由其他類組成,如電腦和cpu
(3)組合關係是類之間整體和部分的關係

在C++中表示類

結構體表示類,:表示繼承,用變量表示類的屬性,函式表示類的行為
如:struct Animal : Biology //:表示繼承
{
bool movable; //類的屬性
void findFood() { } //類的行為
};