多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(可以理解为一个函数的多种表现形式)
实现多态的方式: 1.重写 2.重载 3.父类引用指向子类对象 (如:List arr =new ArrayList();)
其中前者实现的是运行时的多态性,而后者实现的是编译时的多态性
实现多态的技术称为:动态绑定(dynamic binding),动态绑定是指在执行期间(非编译期)判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。程序运行过程中,把函数(或过程)调用与响应调用所需要的代码相结合的过程称为动态绑定。
多态的作用:解耦