對面向對象的理解

面向對象是向現實世界模型的自然延伸,這是一種“萬物皆對象”的編程思想。在現實生活中的任何物體都可以歸爲一類事物,而每一個個體都是一類事物的實例。面向對象的編程是以對象爲中心,以消息爲驅動,所以程序=對象+消息。

面向對象有三大特性,封裝、繼承和多態。

封裝就是將一類事物的屬性和行爲抽象成一個類,使其屬性私有化,行爲公開化,提高了數據的隱祕性的同時,使代碼模塊化。這樣做使得代碼的複用性更高。

繼承則是進一步將一類事物共有的屬性和行爲抽象成一個父類,而每一個子類是一個特殊的父類--有父類的行爲和屬性,也有自己特有的行爲和屬性。這樣做擴展了已存在的代碼塊,進一步提高了代碼的複用性。

如果說封裝和繼承是爲了使代碼重用,那麼多態則是爲了實現接口重用。多態的一大作用就是爲了解耦--爲了解除父子類繼承的耦合度。如果說繼承中父子類的關係式IS-A的關係,那麼接口和實現類之之間的關係式HAS-A。簡單來說,多態就是允許父類引用(或接口)指向子類(或實現類)對象。很多的設計模式都是基於面向對象的多態性設計的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章