以动手实践为荣,以只看不练为耻。以打印日志为荣,以单步跟踪为耻。以空白分隔为荣,以制表分隔为耻。以单元测试为荣,以手工测试为耻。以代码重用为荣,以复制粘贴为耻。以多态应用为荣,以分支判断为耻。以Pythonic为荣,以冗余拖沓为耻。以总结思考为荣,以不求甚解为耻。刚刚看到,不可尽信,也不可全部不信。...
分类:
编程语言 时间:
2014-05-29 04:59:35
阅读次数:
348
早上十一点,在周六的惬意中起床。窗外的杭州雾霾再次光临,想想几年前还是一种只会在清晨遇到的亲切的朦胧美,到如今已经沦为对环境和未来的担忧,原来已经
2014。在编程语言界,有个著名的鸭子测试,用来明确部分动态语言的多态特性,可以用下面这句话来表达:If it looks like a duck, s...
分类:
其他好文 时间:
2014-05-28 01:45:26
阅读次数:
306
面向切面编程(AOP是Aspect Oriented
Program的首字母缩写),我们知道,面向对象的特点是继承、多态和封装。而封装就要求将功能分散到不同的对象中去,这在软件设计中往往称为职责分配。实际上也就是说,让不同的类设计不同的方法。这样代码就分散到一个个的类中去了。这样做的好处是降低了代码...
分类:
其他好文 时间:
2014-05-27 23:48:56
阅读次数:
544
学习要点:1.OOP 的封装2.OOP 的继承3.OOP
的多态面向对象的三个主要特性是封装、继承和多态。一.OOP的封装隐藏对象的字段和实现细节,仅对外公开接口,控制在程序中字段的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机...
分类:
其他好文 时间:
2014-05-26 19:19:44
阅读次数:
228
我们需要封装时,不可避免的必须封装。此乃一句废话,也是真理。那么何时需要封装、多态或者任何其它方式方法?最后重复一遍:当需求或者限制明确的指出这一点、而不是我们自身的心智包袱暗示我们这么做的时候。作为从面向对象走过的人,我深刻的知道这种暗示有时会多么强烈,我们真正要做的就是暂时拒绝诱惑、缓一缓、再缓...
分类:
其他好文 时间:
2014-05-26 18:49:29
阅读次数:
327
这多态,我觉得是最利害的。在开发大型程序中。但,也是需要经过足够多的实践经验才能随心利用的。class Quadrangle{ private
Quadrangle[] qtest = new Quadrangle[6]; private int nextIndex = 0; pu...
分类:
编程语言 时间:
2014-05-26 17:53:47
阅读次数:
295
php面向对象开发的学习(一)自己的事情自己做面向对象的3大特点:(封装,继承,多态)缺一不可封装:把相似内容的东西封装为一个类继承:父母的习性或财产,由我继承或遗传多态:运行时加载类不能直接使用__constructc()
初始化对象封装关键字:public(外部可以访问),protected,p...
分类:
Web程序 时间:
2014-05-25 22:55:49
阅读次数:
301
阐述了Java面向对象程序设计中的多态并实现了一个工资结算系统。简单介绍了UML并给出了工资结算系统的类图。...
分类:
编程语言 时间:
2014-05-25 22:31:13
阅读次数:
347
这三个概念都是与OO中的多态有关系的。如果单是区别重载与覆盖这两个概念是比较容易的,但是隐藏这一概念却使问题变得有点复杂了,下面说说它们的区别吧。
重载是指不同的函数使用相同的函数名,但是函数的参数个数或类型不同。调用的时候根据函数的参数来区别不同的函数。 覆盖(也叫重写)是指在派生类中重新对基类中...
分类:
其他好文 时间:
2014-05-25 15:20:56
阅读次数:
285
作用:使设计的容器有能力包含类型不同而彼此相关的对象。
容器通常只能包含一种类型的对象,所以很难再容器中存储对象本身。存储指向对象的指针,虽然允许通过继承来处理类型不同的问题(多态性),但是也增加了内存分配的额外负担。所以我们通过定义名为代理的对象来解决该问题。代理运行起来和它所代表的对象基本相同,但是允许将整个派生层次压缩在一个对象类型中。
假设有一个表示不同种类的交通工具的类派生层次:...
分类:
编程语言 时间:
2014-05-25 10:06:40
阅读次数:
249