文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
7.2 对OOP的多种理解方法
在计算机术语辞典等资料中,常常对面向对象编程做出了如下定义
面向对象编程是一种基于以下思路的程序设计方法:将关注点置于对象(object)本身,对象的构成要素包含对象的行为及操作(在C语言中,结构体是数据的集合,它将数据捆绑在一起,使得我们可以将这些数据看作一个整体。而对结构体中的数据进行操作的函数却写在了结构体外部。然而在面向对象编程中,将表示事件行为的函数也放入了这个整体,这就形成了对象的概念,使得这个整体既能描述属性,又能描述行为),以此为基础进行编程。这种方法使程序易于复用,软件的生产效率因而得以提升。其中所使用的主要编程技巧有继承、封装、多态三种。
这段话足以作为对术语的解释说明,但仅凭这段话还是无法理解面向对象编程的概念
“面向对象编程是什么?”如果去问十个程序员,恐怕得到的答案也会有十种。就此打个可能稍微有点特别的比方吧。有几个人去摸一只刺猬,但他们看不到刺猬的全身。有的人摸到了刺猬的后背,就会说“摸起来扎手,所以是像刷子一样的东西”;有的人摸到了刺猬的尾巴,就会说“摸起来又细又长,所以是像绳子一样的东西”(图7.1)
图7.1 面向对象编程是什么?
同样的道理,随着程序员看问题角度的不同,对面向对象编程的理解也会仁者见仁,智者见智。
那么到底哪种理解方法才是正确的呢?其实无论是哪种方法,只要能够通过实际的编程将其付诸实施,那么这种方法就是正确的。诸位可以用自己的理解方法去实践面向对象编程。虽然是这么说,但如果仅仅学到了片面的理解方法,也是无法看到面向对象编程的全貌的,会感到对其概念的理解是模糊的。因此,下面我们就把各种理解方法和观点综合起来,以此探究面向对象编程的全貌
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论