Java 多态小记
- 什么是多态
1.面向对象的三大特性:封装、继承、多态。从一定角度来看,封装和继承几乎都是为多态而准备的。
2.多态的定义:指允许不同类的对象对同一消息(方法函数调用)做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用),
3.实现多态的技术称为:动态绑定(dynamic binding),是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。(父类对象应用指向子类的实例对象)
4.多态的作用:消除类型之间的耦合关系。
5.运行时多态存在的三个必要条件:
一、要有继承(包括接口的实现);
二、要有重写;
三、父类引用指向子类对象。
对静态方法的调用不存在任何动态的分派机制(不存在多态性)。当一个程序调用了一个静态方法,要被调用的方法都是在编译时就被选定的,即调用哪个方法是根据该引用被声明的类型决定的。
注意:静态方法不能被重写为非静态的方法(会编译出错)
|
|