1、概述:事物的多种状态
2、对象的多态性:同一个对象,可能具有不同的名称,可以有不同类型的引用指向他。本质:同一个对
象,有不同的描述
3、类的多态性:同一个类型,可能有不同的子类实现,同一个类型的引用,可能会指向不同子类的对
象。本质:同一个名字和描述,可能在不同场景下有不同的实现。
4、多态的前提
(1)要有继承
(2)要有方法的重写
(3)父类引用指向子类对象
多态中成员变量的特点
1、编译看左边,运行看左边
2、编译看左边:如果左侧父类中没有定义相关的变量,编译就会报错
3、运行看左边:如果左侧父类中有对应的成员变量,就会执行父类中成员变量的值
1、编译看左边,运行看右边
2、编译看左边:如果左侧父类中没有定义相关的方法,编译就会报错
3、运行看右边:如果右侧对象所属类型中有相应的方法,就会执行对象所属类型的方法也就是子类的方
法
4、在访问成员方法时,进行动态绑定,判断当前对象到底属于哪个类型,就会去具体的绑定所属类型的
对象
5、动态绑定:在程序运行的过程中,会具体的判断当前对象到底属于哪个类型的对象,对象属于哪个类
型,就执行该类型中的方法
6、注意:动态绑定只发生在运行期,所以编译期必须通过,动态绑定只针对非静态方法
java多态
最新推荐文章于 2024-02-27 19:47:16 发布