zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    kafka集群partition分布原理分析
    Kafka的通讯协议
    RabbitMQ和Kafka
    深入理解kafka设计原理
    Kafka的Log存储解析
    Netty 超时机制及心跳程序实现
    Netty 实现 WebSocket 聊天功能
    Netty 实现聊天功能
    RabbitMQ在分布式系统中的应用
    Kafka文件存储机制那些事
  • 原文地址:https://www.cnblogs.com/wqbin/p/11172100.html
Copyright © 2011-2022 走看看