Administrator
Published on 2021-11-07 / 182 Visits
1
0

谈一谈重载与重写的区别吧

重写与重载

构造器(constructor)是否可被重写(override)

构造器不能被继承,因此不能被重写,但可以被重载

重载(Overload)和重写(Override)的区别

方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态性

重载:发生在同一个类中,方法名相同参数列表不同(参数类型不同、个数不同、顺序不同),与方法返回值和访问修饰符无关,即重载的方法不能根据返回 类型进行区分

重写:发生在父子类中,方法名、参数列表必须相同,返回值小于等于父类,抛出的异常小于等于父类,访问修饰符大于等于父类(里氏代换原则),如果父类 方法访问修饰符为 private 则子类中就不是重写


Comment