• 面向对象多态


    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经常和强制类型转换结合使用。


                  
     

  • 相关阅读:
    【python练习】选课系统(基于面向对象的)
    【面向对象】类的特殊成员方法
    【面向对象】属性方法
    【面向对象】类方法
    【面向对象】静态方法
    【python练习】计算器(使用正则表达式实现)
    【面向对象】多态
    【面向对象】新式类和旧式类的区别
    re.findall()正则表达式中括号的坑
    您真的了解javaScript?(2)
  • 原文地址:https://www.cnblogs.com/zhuhuibiao/p/9313873.html
Copyright © 2020-2023  润新知