什么是多态?
我们都知道面向对象有四个基本特性: 抽象,封装,继承,多态.概括可以理解为,抽象,封装,继承,是多态的基础,多态是抽象,封装,继承的表现.多态,是Java中非常重要的一部分.
简单理解:不同类的 对象 对同一消息 做出了不同的响应就叫做多态, 比如上课铃声响了,上体育课的学生跑到操场上站好,而上英语课的学生会在班级做好 一样.
多态的作用:
简单讲 就是 解耦.详细点说就是,多态是设计模式的基础,不能说所有的设计模式都使用到了多态,但是23种设计模式中 多数都是基于多态的!
多态存在的三个条件
**1.有继承的关系
2.子类重写父类方法
3.父类引用指向子类对象
**
多态的分类
1.编译时多态,即方法重载,从JVM的角度讲,这是一种静态分派
2.运行时多态,即方法的重写,从JVM的角度来讲,这是一种动态分派