多态

多态

  • 动态编译

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

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

  • 多态存在的条件

    • 有继承关系

    • 子类重写父类方法

    • 父类引用指向子类对象

  • 注意:

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

    • 父类和子类,有联系 ,类型转换异常! ClassCastException !

    • 存在条件:继承关系,方法需要重写,父类引用指向子类对象! Father f1 = new son();

    •  

  • instanceof (类型转换) 引用类型转换

  • system.out.println(x instanceof y);//x与y 存不存在父子关系
    Object object = new Stdent();
    system.out.println(object instanceof Student); //true
      system.out.println(object instanceof Person); //true
      system.out.print1n(object instanceof 0bject); //true
      system.out.println(object instanceof Teacher); //FaLse
      system.out.println(object instanceof String); //False
  • 父类引用指向子类的对象

  • 把子类转换为父类,向上转型;

  • 把父类转换为子类,向下转型; 强制转换

  • 方便方法的调用,减少重复的代码!简介

static扩展

 

 

 

posted @ 2021-03-01 22:15  斯卡哈  阅读(52)  评论(0)    收藏  举报