多态

Posted on 2018-08-07 22:41  lhj1006400320  阅读(86)  评论(0编辑  收藏  举报

一、多态的两个核心表现

  1、方法的多态性

    |- 重载:同一个方法名称,通过参数不同的类型或个数,可调用不同的方法;

    |- 重写:同一个父类的方法,可能根据不同子类的重写,有不同的实现。

  2、对象的多态性(前提:方法重写)

    |- 【自动转换】对象的向上转型:父类 父类对象 = 子类实例

    |- 【强制转换】对象的向下转型:子类 子类对象 = (子类)父类实例

      向下转型时,最好先判断是否可以满足条件,运行以下代码

if (子类.instanceOf(父类)){ //避免 ClassCastException异常出现
     子类 子类实例化 = (子类) 父类实例化;     
}

 

 

  

Copyright © 2024 lhj1006400320
Powered by .NET 8.0 on Kubernetes