面向对象多态

1.多态:

    定义:同一父类的不同子类,在处理同一行为时,有不同的表现。就是

多态。

    学习多态的原因?

         提高代码的可扩展性和可维护性。

  
2.实现多态的步骤:

     A.父子类继承

     B.子类重写父类方法:

     C.调用时,声明父类 new 子类。

 
3."声明父类 new 子类" 介绍:

   1.创建父类引用,指向子类对象。


      A.该对象,可以直接使用父类的所有属性和【方法】;但是子类特有属

性和方法,却无可奈何?

      B.如果子类没有重写父类的方法,那么该对象调用的是父类的方法。

      C.如果子类重写了父类中的方法,那么该对象调用的是子类重写后的

方法。


4.多态的表现形式分为两种:

    A。父类做参数:


    B。父类做返回值类型:
 

5.类型转换:

    解决 :声明父类new 子类 ,创建出来的对象,不能调用子类特有属性

和方法的问题。


    A。向上转型:声明父类new 子类

                1.调用父类里的属性和方法

                2.调用子类重写的方法

                3.不能调子类特有的属性和方法


    B。向下转型: 子类类型  对象名1=(子类类型) 对象名2。

                  ---说明:对象名2是通过“声明父类new子类”得到的

对象。

                  ---存在隐患,如果子类类型转换错误,程序直接报错。

                  ---转换成功后,就可以调用子类特有的方法和属性了。


6.instanceof  关系运行符。

   学习原因?    避免类型转换异常,从而提高代码的健壮性。

注意:1.使用interfaceof运算符时,对象的类型必须和interfaceof的第二

个参数所指定的类或者接口在继承属上有上下级关系,否则会出现编译错误。
 2.interfaceof经常和强制类型转换结合使用。


              
 

原文地址:https://www.cnblogs.com/zhuhuibiao/p/9313873.html