您的位置:首页 > 编程语言 > C语言/C++

《爱编程,爱c++十四期-第四章-c++对象》

2015-06-11 09:05 302 查看

(点一下上面的YSUCSDN即可哦)

书中开篇立论:在我们熟悉的现实世界中,一切事物都是对象。对象既可以是有形的也可以是无形的。

对于有形和无形啊,我们也不要拘束嘛,它们各自聚集起来的东西还是可以作为对象的。什么意思?一只小企鹅可以当做对象,一群小企鹅也可以当做对象。一道菜的烹饪方法可以当做对象,一本烹饪菜谱书也可以啊。

面向对象方法中的抽象,是指对具体问题(对象)进行概括,抽出一类对象的公共性质并加以描述的过程。啥是抽象呢?其实就是找共同点!男屌丝和高富帅都是男人,所以他们都是“男人类”这个类的对象。你要是想抽象一群物质,就去找他们共同之处。有的哥们就问了:“那很抽象的东西怎么来的啊?”找了抽象的东西的共同点呗!别想太复杂,都是一步一步进步的,由具体的东西慢慢发展过来的

一般来讲,对一个问题的抽象应该包括两个方面数据抽象和行为抽象。为啥要包括这两个方面?挺好理解,因为这俩东西前者注重空间后者注重时间,什么物质能离开时间和空间而存在啊?所以研究一些东西的时候,时间和空间是要首先作为基础的东西来研究的这,爱因斯坦有相关论述,有兴趣的战友可以去看看。

这里,咱们再谈谈封装,第一章的时候浅谈了一下封装,这一章咱们可以深入一点去思考一下这个玩意儿。

书上说:封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的函数代码进行有机的结合,形成类,其中的数据和函数都是类的成员。

所以,我们可以进步一下对于封装的认识,小伙伴们,提高境界要把握两点——运动、范畴。说的有点文绉绉的了,啥意思啊?就是说啊,封装的东西不都是静止的东西,这个世界上有啥是静止的呢?没有绝对的静止只有绝对的运动,所以我们封装的时候要包含住一些事情发展的过程而不仅仅是那些相对静止的物质。就好像我们弄个纸类,不仅仅是要描述一下啥是纸,还得说:“这玩意儿能写情书,还可以叠飞机。”我们编程不仅仅是要认识世界的还要改造世界。所以你不能只是很实在地去描述它是个什么东西,也应该用它来做点什么事情通常我们开发软件不会只用一个类,所以我们要分析两件事之间的关系,找出一些他们之间的能让静止的玩意运动起来的“工作”。这也就是为啥咱们要写函数了,函数既可以去认识物质还可以改造物质既可以去认识车是啥,去构造函数一下,也可以new一个车出来。


我认为啊,我们学软件工程的,最要学的不是什么编程语言课、建模课……而应该是离散数学中的离散思想和关联思想,我们编程的很多东西都是由那里继承过来的,如果把这个基础吃透打好,肯定是可以在思想境界上得到提高学起来就不会那么吃力了。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: