重载(Overload)和重写(Override)的区别是什么?重载的方法能否根据返回类型进行区分?【详细解释】

今天爱分享给大家带来重载(Overload)和重写(Override)的区别是什么?重载的方法能否根据返回类型进行区分?【详细解释】,希望能够帮助到大家。
方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态性。

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

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

人已赞赏
Java

构造器(constructor)是否可被重写(override)?【面试题详解】

2020-11-26 17:30:45

Java

== 和 equals 的区别是什么?【面试题详解】

2020-11-26 17:33:29

'); })();