对于多态的理解(个人记录)

对于多态的理解(个人向)

最近也是在学习JS,与几位好友谈及面向对象。在JS的面向对象中聊到了什么是多态,本想用自己的Java知识做出解释的时候却发现自己早已忘记了什么是多态。于是也就回去粗略的复习了一番,顺手做个记录。
说的是思路,不贴代码,个人记录。这里用Animal来举例子(因为我以前学习的时候也是用的Animal,也可能因为我正在听Martin Garrix的Animals吧)本文比较适合像我一样会,但是忘记的朋友学习一下。新手可能会直接自闭吧。

什么是多态呢?多态就是在你调用父类的时候传递进去不同的对象就会得到不同的结果。
多态的必要条件

1.继承
2.重写
3.父类对象指向子类的应用。

向继承,重写就不用多说了,比较容易理解。
最难以的理解的就是父类的对象指向子类的应用。
根据这句话我们能得到一个式子
父类  对象名 = new 子类();
也就是例如 Animal a = new Dog();这就算是一个多态了。
这就是父类的对象指向子类的应用

那么可以想一下,小动物他们都有一个共同的特点,那就是都会叫,但是也有不同的地方,那就是他们 的叫声是不一样的。
那么这样的话可以定义一个父类Animal,写入叫的方法
之后再去分别定义一个dog,cat,tiger,等等让他们去继承父类Animal,并且去重写这个名为“叫”的方法。
然后到这里 继承,重写都有了。
随后定义完了之后回到main中,写上 Animal a = new Dog();那么到这里就已经实现了多态,当你在调用叫这个方法的时候传参进去dog那么就会执行dog 的代码,
首尾呼应:调用父类的时候传递进去不同的对象就会得到不同的结果。
可能到这里有些人看的不是很明白吧,特别是新手。本文比较适合像我一样会,但是忘记的朋友学习一下。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值