惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

U
Unit 42
The Cloudflare Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Y
Y Combinator Blog
G
Google Developers Blog
Vercel News
Vercel News
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Jina AI
Jina AI
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
博客园 - 三生石上(FineUI控件)
MongoDB | Blog
MongoDB | Blog
S
SegmentFault 最新的问题
阮一峰的网络日志
阮一峰的网络日志
H
Hackread – Cybersecurity News, Data Breaches, AI and More
aimingoo的专栏
aimingoo的专栏
T
Tailwind CSS Blog
博客园 - 叶小钗
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
月光博客
月光博客
Microsoft Security Blog
Microsoft Security Blog
P
Proofpoint News Feed
The GitHub Blog
The GitHub Blog
云风的 BLOG
云风的 BLOG

博客园 - 王永庆

java编程思想(3)感悟(9)---控制程序流 - 王永庆 - 博客园 ibatis学习笔记(5) - 王永庆 - 博客园 ibatis学习笔记(4) - 王永庆 - 博客园 ibatis学习笔记(3) - 王永庆 - 博客园 ibatis学习笔记(2) ibatis学习笔记(1) Java编程思想3感悟(8)---一切都是对象 java编程思想3感悟(7)---抽象基类和接口、并发 java编程思想3感悟(5)---复用具体实现和复用接口 java编程思想3感悟(4)---被隐藏的具体实现 java编程思想3感悟(3)---每个对象都提供服务 java编程思想3感悟(2)---每个对象都有一个接口(方法) JSP处理表单的一些经验分享 Java语言异常处理(转载) log4j学习笔记2 Spring控制反转(IoC)的理解 java编程思想3感悟(1)---java的5个特性 bat文件说明 sql学习笔记(二)-----游标的使用
java编程思想3感悟(6)---是一个与像是一个关系和伴随多态的...
王永庆 · 2007-11-22 · via 博客园 - 王永庆

    一个圆形就是一个几何形状,判断是否继承,就是要确定你是否可以用is-a来描述类之间的关系,并使之具有意义。
    有时你必须在导出类型中添加新的接口元素,这样也就扩展了接口并创建了新的类型。这种情况我们可以描述为is-like-a(像是一个)的关系。新类型具有旧类型的借口,但是他还包含其他方法,所以你不能说他们完全相同。
    在处理类型的层次结构时,经常想把一个对象不当做他所属的特定类型来对待,而是将其当作其基类的对象来对待,这使得人们可以编写出不依赖于特定类型的代码。在几何形的例子中,方法操作的都是泛化的形状,所以这些方法都是直接对一个几何形对象发送消息,他们不用担心对象如何处理消息。
    一个面向对象程序肯定会在某处包含向上转型,因为这正是你如何将自己从必须知道确切类型中解放出来的关键。你是一个shape,我知道你可以erase()和draw()你自己,那么去做吧,但是要注意细节的正确性。doStuff()的代码给人印象深刻之处在于,不知何故,总是做了该做的。
    在实际操作中,多态可以让我不用关心某个对象到底是什么具体类型,就可以使用该对象的某些方法,而这些方法通过一个抽象类或者接口来实现。
从下往上看的话,多态实际上是多个对象的抽象,对它们进行通用编码。

posted on 2007-11-22 15:15  王永庆  阅读(476)  评论()    收藏  举报