面向對象的本質

在csdn上看到了討論面向對象本質的文章:http://blog.csdn.net/jyk/archive/2010/02/08/5300402.aspx(以及從這裏的延伸文章http://blog.csdn.net/hoping/archive/2010/01/09/5164194.aspx,以及再延伸原文:http://www.cs.utexas.edu/~wcook/Drafts/2009/essay.pdf ) 這個問題也是我曾經想要弄明白的。現在雖然不能算是掌握了,但是還是有一些想法。沒有時間或者理解還不夠,隨筆在這裏。 面向對象的本質就是一切皆對象。對象負責自己需要完成的工作(任務)。如果一個對象需要別的對象完成什麼任務,就要給對方發送消息。調用方法就是發送消息的手段。至於在編程語言中,面向對象的繼承,多態和封裝等,都是面向對象的特性。我覺得理解了面向對象的這個本質,對於面向對象設計至關重要。但是現實編程中,由於編程方式的發展歷史,有時也是爲了解決某些問題的方便性,很多時候會用到非面向對象的編程方式。 至於抽象,是面向對象程序設計中的一種方法。 上面這種理解還是來自 孫衛琴的 面向對象 Java編程 一本書。 但是讀到其中關於面向對象的那段,有醍醐灌頂,猛然回首的感覺。(想想又要開始詬病中國的教育)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章