注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

罗智福 廊坊师范学院信息技术提高班第十期

博客地带,有你更精彩

 
 
 

日志

 
 
关于我

我来自遥远美丽的广西 欢迎访问我的csdn博客 http://blog.csdn.net/asd19920126

网易考拉推荐

对面向对象的理解  

2014-03-30 18:51:36|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

首先明确一点,面向对象的程序设计思想要优于面向过程的程序设计,为什么呢?这个问题对于不同人群,还应该用不同的方式去解答,其实很多抽象的东西并不是代表着它非常难,还是在于描述的人用什么方式去讲述,或者是倾听的人用什么方式去思考。

我不得不想起大一的时候,拿着一本红皮的c++书去听的第一节课,翻开那崭新的课本,在第一章前几部分内容,当时把我看傻了,以至于我不知道小伙伴们是否也跟我一样看傻了,然后傻傻的听着台上的老师讲这部分内容,一开始以为老师不停的把脚踮起落下,再踮起再落下,低着个头,微微倾斜的身体,目光注视着讲台上的那本书,一只手撑着讲台,另一只手时不时的拿起来用拳头捂住嘴巴和鼻孔:“呃嗡嗡,呃嗡嗡zzz~~~e”,我没猜错的话,您老人家是在打哈欠吧!

话说刚才想讲那书前面的内容的,跑骗了,我们继续回来哈!当时呢,我不仅看傻了,看困了,也听的不知道老师在讲什么了,不过那节课的内容让我现在还记忆犹新的就是:我以为老师在讲哲学!从那以后,我几乎没有再看那几段内容了,时至今日(隔了两年),我还是头顶着阴霾,凭着记忆在写这篇博客。

而后,我便在第一遍机房收费系统完成之前一直在用面向过程的方式写程序。虽然到现在对于面向对象的理解还很欠缺吧,但是有些自己的理解还是可以拿出来分享分享,无论对错,大鸟掠过,小鸟栖落,指点文章,激昂文字,你说这是那就是。

如果有一天,老师让我回家告诉我爸爸什么是面向对象,我会对爸爸说:“爸,咱家以前是不是有一头牛?”

爸爸:yes

我:是不是还有一个俩轮的推车?

爸爸:yes

我:一开始是不是你推着推车(上面还有重物),爷爷背着个书包骑着牛?

爸爸:yes,不过那书包是我的。

我:后来为什么说这是具有里程碑意义的两样东西?

爸爸:因为当时把牛跟车封装在一起,这样我就不用推车,爷爷再也不用背包了。我们都坐在了车上,后来把封装起来的这两个东西起了个名字叫“牛车”。

我:哇,好牛逼的车!能告诉我你怎么把它俩给封装起来的吗?

爸爸:其实还有一件不起眼但却非常有用的东西——牛鞍。但是当时你爷爷直接做了个套子把车和套子死死地困在一起,然后套在了牛脖子上。然后我对你爷爷说,这不太好,这样很难维护,很难扩展,而且接口依赖了对象。但是这么说你爷爷表示:你老子我听不懂!然后我问道:“如果套子坏了是不是牛跟车就分离了,然后只能我推车你骑牛?如果有钱了,东西也多了,再买来一辆新车,是不是咱俩坐着原来的牛车,让小罗推着新车?如果有一天小罗长大了,而咱这两辆车都破旧不能用了,你如果不构造一张图纸和说明再加上相关的参数(图纸就是构造函数了),笨笨的小罗是不是很难造出这么神奇的牛车?将来怎么继承下去?

爷爷:yesyesyesyes我给四个yes

爸爸:很好,现在我制作一个特殊的牛鞍,能与任何车柄相连,而且接口有5个,能套在任何牛身上,这样是不是只要有车柄的车就能连上我的牛鞍,而且要想连接上我的牛鞍,必须做符合我这个接口的车柄!这样就是车子依赖车柄了,而且有5个接口,你买了的新车还可再接上这个牛鞍,这样如果接上了5俩车,不管哪一俩坏了,只要从牛鞍卸下就行,别的车不受影响,这是不是体现了车子间的耦合性很低?车上面有的载着人,有的载着大米,有的载着书包,同是名字一样的都叫做车,但是却展现出多种功能,而表现形态各异,是不是体现了多态?将来小罗按照图纸又组合了一辆车,后来因为科技发达,他把车取名叫“汽车”,这汽车有着牛车所有的功能,但是又增加了各种方法和属性如可以后退,多了俩轮,颜色光鲜亮丽等等,这是不是继承并扩展了,继承是不是体现了长江后浪推前浪?

我:爸,你懂面向对象?

爸爸:不懂。

我:那你怎么知道封装、继承、多态、接口、类和构造函数等?

爸爸:这些词不都是语文老师教的吗?我初中文凭点点点

我:这点点点

 

  评论这张
 
阅读(71)| 评论(22)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017