重载与重写区别:
方法的重写Overriding和重载Overloading是Java多态性的不同表现。
1、重写Overriding是父类与子类之间多态性的一种表现,而重载Overloading是一个类中多态性的一种表现。
2、如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了(如果一定要使用父类方法则可以使用super来调用);
3、如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型(当然是参数列表不一样的前提之下,不然可想而知电脑是无法猜测“复杂的人类”的选择到底是哪个)。
重载的特性:
1.函数名相同;
2.返回类型可以不一样;
3.可以抛出不同的异常。
重写规则
1.参数列表必须与被重写的方法的相同;
2.返回的类型必须一直与被重写的方法的返回类型相同;
3.访问修饰符的限制一定要大于被重写方法的访问修饰符(public>protected>default>private)
4.重写方法一定不能抛出新的检查异常或者比被重写方法申明更加宽泛的检查型异常.
例如,父类的一个方法申明了一个检查异常IOException,在重写这个方法是就不能抛出Exception,只能抛出IOException的子类异常,可以抛出非检查异常.
分享到:
相关推荐
主要总结了java中的重载和重写的区别,供大家理解参考,有问题可以补充
重载与重写的区别,详细描述了java中重载与重写的区别。
1、重载 方法的重载是同一个类中多态性的一种表现。 方法重载须遵循如下两条规则 (1)方法名相同。 (2)参数列表不同。 注意:方法的返回值类型不能用来区分重载的方法。这是因为当调用一个方法时...
java中重载与重写的区别.pdf
Java中重载和重写总结,基础知识,概念分清楚,补充基础知识
java中重载与重写的区别.doc.docx
Java 基础核心总结 - Java 基础核心总结 - Java 概述 - 什么是 Java? - Java 的特点 - Java 开发环境 - JDK - JRE - Java 开发环境配置 - Java 基本语法 - 数据类型 - 基础语法 - 运算符 - Java 执行...
我根据我的理解来谈谈Java中重写方法与重载方法的区别。 重写 Java 中重写又叫覆盖,主要是指继承(extends)父类或者实现(implements)接口时将父类或者接口中已经存在的方法进行重新定义。重写的方法在父类...
对Java中方法的重载和重写的具体描述,有利于区分方法的重载和重写
java中重载与重写的区别,方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。重载Overloading是一个类中多态性的一种表现。
重载与覆写/重写的区别 区别 重载 覆写 1 单词 OverLoading Override 2 概念 方法名称相同,参数的类型或个数不同 方法名称相同,参数的类型或个数相 同,返回值类型相同 3 范围 发生在一个类之中...
重载和重写--java
本文主要介绍Java 的重载和重写,学习java的同学都知道Java的多态有多重要,这里给大家举例说明函数的重载和重写,希望能帮助有需要的小伙伴
JAVA中的方法重写与方法重载的区别,还算挺详细的
java 对重载的应用,区别 重载 重写的 区别。让大家认识重载
Java中重载与重写。
NULL 博文链接:https://zhycaf.iteye.com/blog/980334
// 对overload测试的文件:OverloadTest.java public class OverloadTest { // 下面几个方法用来验证可以通过定义不同的参数类型和参数的数目进行方法重载。 public void fun(){ System.out.println("method ...
对java中重载和重写的概念做了详细的介绍和比较
java 重载,重写以及继承,多态的区别