多态指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)将一个方法调用和一个方法主体关联起来被称为绑定。如果在程序执行前进行绑定称为前期绑定(最常见于C语言中)。而Java则是使用后期绑定,既在运行时根据对象类型进行绑定。后期绑定是多态机制实现的基础。多态不适用于变量,构造方法以及静态方法。JDK 1.5支持被重写的方法的返回值类型为原方法的返回值类型的子类,这种行为被称为协变返回类型