• java面向对象4-多态


    5 多态

    5.1多态:polymorphism概念

    定义:某一类事物的多种存在形态
    表现形式:父类变量指向子类实例
      例:动物中猫,狗
      猫这个对象对应的类型是猫类型
      猫 x = new 猫();
      同时猫也是动物中的一种,也可以把猫称为动物
      动物 y = new 猫();
      动物是猫和狗具体事物中抽取出来的父类型
      站在父类的角度看子类对象,看不到子类特有的属性和方法

     

     

    相同的的方法会被重写,变量没有重写之说。如果子类声明了父类一样的变量,那意味着子类中将有两个相同名称的变量!

     

    5.2多态的作用和前提

    5.2.1多态的前提:

    1.需要存在继承或者实现关系
    2.要有覆盖操作(子类对父类方法重写)
    3.父类类型变量指向子类实例

    5.2.2程序中体现::

    父类或者接口的变量指向子类(实现类)对象
    子类对象的类决定方法的调用

    5.2.2多态的前提:

    多态的存在提高了程序的扩展性和后期可维护性

      note:编译类型和运行时类型(引用数据类型)

     

    5.3多态的特点

    • 成员方法:有

        编译时:要查看引用变量所属的类中是否有所调用的成员
        在运行时:要查看对象所属的类中是否有所调用的方法

    • 成员变量:无

        只是编译类型所指向的成员变量
        即:成员变量没有多态性

    • 静态成员方法:无

        没有多态性

     

       

    5.4对比于类型转换

    向上转型:相当于基本数据类型的隐式转换;
    向下转型:类似于强制转换

     

    5.5

  • 相关阅读:
    数论2&莫&杜
    虚树学习笔记
    LinkCutTree学习笔记
    FWT学习笔记
    容斥
    线段树合并
    线性基
    FFT_应用和例题
    斜率优化
    Redis中String的底层实现
  • 原文地址:https://www.cnblogs.com/wqbin/p/11172100.html
Copyright © 2020-2023  润新知