面向對象

1)萬物皆對象。  能夠將對象認爲是奇特的變量,它能夠存儲數據,除此以外,你還能夠要求它在自身上執行操做,理論上來說的話,你可抽取待解決的問題的任何概念化構建(狗,建築物,服務等),將其表示爲程序的對象oop

任何東西都是能夠用對象的形式來解決問題spa

2)程序是對象的合集,它們經過發送消息來告知彼此所要作的。 要想請求一個對象,就必須對該對象發送一條消息,更加具體的來講,能夠把消息想象爲對某個特定對象的方法的調用請求對象

 

對象之間傳遞數據,是經過調用對象的引用來操做他的變量和方法去實現的繼承

3)每一個對象都有本身的由其餘對象所構成的存儲。 換句話說,能夠經過建立包含現有對象的包的方式來建立新類型的對象,所以,能夠在程序中構建複雜的體系,同時將其複雜性隱藏在對象的簡單性背後。內存

 

4)每一個對象都有用其類型。按照通用的說法,「每一個對象都是某個類(class)的一個實例」,這裏「類」就是類型的同義詞。每一個類最重要的區別於其餘類的特徵就是「能夠發送什麼樣的消息給他」。class

 

每一個對象都是能夠進行交互的,經過對象的方法變量

5)某一特定類型的全部對象均可以接收一樣的消息。這是一句意味深長的表達,由於「圓形」類型的對象同時也是「幾何形」類型的對象,因此一個「圓形」對象一定可以發送給「幾何形「對象的消息。這意味着能夠編寫與「幾何形」叫並自動處理全部與幾何形性質相關的事物的代碼。這種可替代性是oop中最強有力的概念之一。引用

 

對象的多態和繼承能夠解決一切事情請求

對象具備狀態,行爲和標識。這意味着每一個對象均可以擁有內部數據(該對象的狀態)和方法(他們的行爲),而且每個對象均可以惟一的與其餘對象區分開來,具體來講,就是每個對象在內存中都有一個惟一的地址程序

相關文章
相關標籤/搜索