Java中的多态

0x01 多态

一个类对象有各种形态,比如狗是狗类,也是动物类,一个表示当前类,一个表示其父类

0x02 多态的特点

  1. 子类对象赋值给父类,运行时,表现的是子类的特征(先去找子类的方法)
  2. 字段不存在多态,字段前面是什么类型就调用谁的,在编译的时候已经确定要去调用谁的
    怎么理解呢,看下面的代码

运行的时候发现结果是Super,不是说调用子类的特征吗?为什么不是Sub?答案就是刚才说的那样,在编译的时候已经决定了使用字段的类型。

0x03 多态的作用

  1. 当把不同子类对象都当作父类来看待,可以屏蔽不通过子类对象之间的差异性,从而达到通用编程的目的
  2. 使用多态后,只需要写一个方法就能达到相同的功能

0x04 类的强制类型转换

把父类赋值给子类,在概念上与多态相反。

本文标题:Java中的多态

文章作者:Pino-HD

发布时间:2018年05月30日 - 21:05

最后更新:2018年05月30日 - 21:05

原始链接:https://pino-hd.github.io/2018/05/30/Java中的多态/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

坚持原创技术分享,您的支持将鼓励我继续创作!