谈谈你对多态的理解

什么是多态?

多态是面向对象三大特征之一,我的理解就是多态可以使不同的对象,去调用同名的方法的时候有不同的实现。

静态多态

通过方法重载来实现,重载的方法同名但是方法参数不同,于是可以在编译时确定对象调用哪个方法。

动态多态

在运行时确定调用哪个方法,通过继承,重写,向上转型实现。不同子类继承父类的方法,可以通过方法重写来实现不同的逻辑,比如有动物类,其中有eat方法,打印了一句话“动物吃东西”,猫类和狗类继承动物类,猫重写eat方法为“猫吃鱼”,狗重写eat方法为“狗吃骨头”,在创建猫对象或者狗对象时,让父类的引用指向子类,就可以实现动态多态。
比如:Animal  dog = new Dog(); Animal cat = new Cat(); 这样dog.eat()和cat.eat()就是不同的实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值