day23--多态、instanceof、类型转换

多态

  • 动态编译

  • 即同一个方法可以根据发送对象的不同而采用多种不同的行为方式。

  • 一个对象的实际类型是确定的,但可以指向对象的引用的类型有很多。(父类,有关系的类)

  • 多态存在的条件:

    • 有继承关系

    • 子类重写父类方法

    • 父类引用指向子类对象

  • 注意事项:

    1. 多态是方法的多态,属性没有多态性。

    2. 父类和子类,有联系。类型转换异常:ClassCastException

    3. 多态存在条件

    4. Father f1=new son();

    5. 不能重写的类型:不能重写,所以没有多态

      • static方法,属于类,它不属于实例

      • final 常量

      • private


instanceof

判断两个类是否存在父子关系(x instanceof y-->x是否y的子类)


类型转换

1、父类引用指向子类的对象

2、把子类转换为父类,向下转型,直接转;

3、把父类转换为子类,向上转型,需要强制转换;

4、方便方法的调用,减少重复的代码!简洁。

 

posted @ 2021-04-14 15:10  dddddmm  阅读(32)  评论(0编辑  收藏  举报