多态机制
多态性是面向对象程序设计代码重用的一个重要机制,我们曾不只
一次的提到 多态性。在 运行时多态性:继承和接口的实
现一文中,我们曾详细介绍了 实现运行时多态性的动态方法调
度;今天我们再次深入 核心,一起学习 中多态性的实
现。
多态) 一词来自希腊语,意为 多种形式 。多数
程序员把多态看作对象的一种能力,使其能调用正确的方法版
本。尽管如此,这种面向实现的观点导致了多态的神奇功能,胜于
仅仅把多态看成纯粹的概念。
中的多态总是子类型的多态。几乎是机械式产生了一些多态的
行为,使我们不去考虑其中涉及的类型问题。本文研究了一种面向
类型的对象观点,分 析了如何将对象能够 表现的行为和对象即将表
现的行为分离开来。抛开 中的多态都是来自继承的概念,我们
仍然可以感到, 中的接口是一组没有公共代码的对象共享实
现。
多态的分类
多态在面向对象语言中是个很普遍的概念虽然我们经常把多态混为
一谈,但实际上 有四种不同类型的多态。在开始正式的子类型多态
的细节讨论前,然我们先来看看普通面向对象中的多态。