C++編程思想學習-隨筆記錄(面向對象概念)

所有的程序設計語言都提供抽象。如:彙編語言是對底層機器的小幅度抽象,c等命令式語言是對彙編語言的抽象,但是它們的主要抽象仍然要求程序員按計算機的結構去思考,而不是按要解決的問題結構去思考。因此,面向對象可以理解爲比以前更靈活和更強大的語言抽象。

因此,面向對象要求程序員用問題本身的術語描述問題,而不是用要運行解決方案的計算機術語來描述問題,當然這些問題的術語仍然與計算機有聯繫。每個對象看上去像一臺小計算機,它有狀態,有可以執行的運算,這好比現實世界中對象的很好類比,它們都有特性和行爲。

面向對象是指一種程序設計範型,同時也是一種程序開發的方法。對象指的是的集合。它將對象作爲程序的基本單元,將程序和數據封裝其中,以提高軟件的重用性、靈活性和擴展性。

面向對象的5個特性:

1.萬物皆對象。對象可以被認爲是一個奇特的變量,它能存放數據,而且可以對它“提出請求”,要求它執行對它自身的運算。理論上,我們可以在需要解決的問題中取出任意概念性的成分(狗,建築物,服務等等),把它表示爲程序中的對象。

2.程序就是一組對象,對象之間通過發送消息互相通知做什麼。更具體講,可以將消息看做是對於調用某個特定對象所屬函數的請求。

3.每一個對象都有它自己的由其他對象構成的存儲區。這樣,就可以通過包含已經存在的對象創造新的對象。因此,程序員可以構造出複雜的程序而且能將程序的複雜性隱藏在對象的簡明性背後。

4.每一個對象都有一個類型。採用OOP術語,每個對象都是某個類的實例(instance),其中“類”(class)與“類型”(type)是同義詞。類的最重要的突出特性是“能向它發送什麼消息”。

5.一個特定類型的所有對象能接收相同的消息。

發佈了14 篇原創文章 · 獲贊 20 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章