zoukankan      html  css  js  c++  java
  • [java面试]关于多态性的理解

    执行时多态性是面向对象程序设计代码重用的一个最强大机制。Java多态性的概念也能够被说成“一个接口。多个方法”。Java实现执行时多态性的基础是动态方法调度,它是一种在执行时而不是在编译期调用重载方法的机制。

    方法的重写Overriding和重载Overloading是Java多态性的不同表现。

    重写Overriding是父类与子类之间多态性的一种表现。重载Overloading是一个类中多态性的一种表现。假设在子类中定义某方法与其父类有同样的名称和參数。我们说该方法被重写(Overriding)。

    子类的对象使用这种方法时,将调用子类中的定义。对它而言。父类中的定义如同被“屏蔽”了。

    假设在一个类中定义了多个同名的方法,它们或有不同的參数个数或有不同的參数类型,则称为方法的重载(Overloading)。

    Overloaded的方法是能够改变返回值的类型。方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中Java多态性的一种表现。假设在子类中定义某方法与其父类有同样的名称和參数。我们说该方法被重写 (Overriding)。子类的对象使用这种方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。

    假设在一个类中定义了多个同名的方法。它们或有不同的參数个数或有不同的參数类型。则称为方法的重载(Overloading)。Overloaded的方法是能够改变返回值的类型。

    当超类对象引用变量引用子类对象时,被引用对象的类型而不是引用变量的类型决定了调用谁的成员方法,可是这个被调用的方法必须是在超类中定义过的,也就是说被子类覆盖的方法。 (可是假设强制把超类转换成子类的话,就能够调用子类中新加入而超类没有的方法了。

  • 相关阅读:
    postgresql9.1 streaming replication(热备份)
    python 中 theadLocal 的用法
    Python 17
    PYTHON学习笔记-DAY-16
    PYTHON学习笔记-DAY-15---------------------------未完待续
    PYTHON学习笔记-DAY-14
    PYTHON学习笔记-DAY-9
    PYTHON学习笔记-DAY-8
    PYTHON学习笔记-DAY-7
    PYTHON学习笔记-DAY-6
  • 原文地址:https://www.cnblogs.com/mfmdaoyou/p/6768518.html
Copyright © 2011-2022 走看看