• Java override 和 overload 的区别和联系


    方法的重写(Overriding)和重载(Overloading)是Java多态性的不同表现。重写(Overriding)是父类与子类之间多态性的一种表现,而重载(Overloading)是一个类中多态性的一种表现。
    如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了。
    如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型或有不同的参数次序,则称为方法的重载(Overloading)。不能通过访问权限、返回类型、抛出的异常进行重载.

    overload(重载):
    是在同一个类中,方法名相同,参数的个数、顺序、类型不同的方法(注意跟返回值没有关系)

    覆盖是父与子的关系,是子的把父的给隐藏了,重载是在一个类中,方法名相同,但参数的个数和类型至少有一项不同,调用的时候会根据参数找到对应的方法

    如:

    public void getA(){
    }
    public void getA(int a){
    }


    override(覆盖):
    这个覆盖只出现在父类与子类之间,也称作 重写,
    也就是说一个A类继承B类,B类中有一个方法
    如:
    B类中:

     public void getC(){
    }


    而A类继承B类,
    同样有一个getC方法,并且有override关键字修饰
    即:

    @Override
    public void getC(){
    }


    这样就称作方法的 覆盖 或 重写

  • 相关阅读:
    数据访问(从数据库中访问数据)
    加载类、设计模式(单例模式和工厂模式)
    面向对象之静态
    面向对象三大特性之继承和多态
    面向对象三大特性之封装
    面向对象基础知识
    mysql下载与安装过程
    Idea添加依赖的步骤:
    Java JDBC 在IDEA环境下连接MySQL
    JAVA中集合HashMap嵌套联系
  • 原文地址:https://www.cnblogs.com/aspirant/p/6884777.html
Copyright © 2020-2023  润新知