java重写与重载的区别

java重写与重载的区别

ID:34417298

大小:288.50 KB

页数:7页

时间:2019-03-05

java重写与重载的区别_第1页
java重写与重载的区别_第2页
java重写与重载的区别_第3页
java重写与重载的区别_第4页
java重写与重载的区别_第5页
资源描述:

《java重写与重载的区别》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、重写与重载的区别实验组员:2014022124陈剑明2014022138李欢欢2014022129张青2014021033周超艳1.方法重写(Overriding)在java语言中,利用extends关键字来表示一个类继承了另一个类。在Java中,子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。方法重写又称方法覆盖。若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法。如需父类中原有的方法,可使用super关键字,该

2、关键字引用了当前类的父类。重写方法只能存在于具有继承关系中,重写方法只能重写父类非私有的方法。方法重写是指在子类中定义的一个方法,其名称、返回类型及参数列表正好与父类中某个方法的名称、返回类型及参数列表相匹配,那么可以说,子类的方法重写了父类的方法。图1.1方法重写图重写方法的规则:1.1参数列表必须完全与被重写的方法的相同,否则不能称其为重写而是重载。1.2返回类型必须与被重写的方法的返回类型相同,否则不是重写而是重载。访问修饰符的限制一定要大于被重写方法的访问修饰符(public>protected>default>private)图1.2

3、方法重写访问修饰符错误图1.3重写方法一定不能抛出新的检查异常或者比被重写方法申明更加宽泛的检查型异常。例如,父类的一个方法申明了一个检查异常IOException,在重写这个方法是就不能抛出Exception,只能抛出IOException的子类异常,可以抛出非检查异常。图1.3方法重写异常等级错误图只允许多层继承,而不能多重继承:在JAVA中只允许单继承,不能使用多重继承,既一个子类只能继承一个父类,如图1.4与图1.5所示。但是允许进行多层继承,即一个子类可以有一个父类,一个父类还可以有一个父类。如图1.6与图1.7所示:图1.4多重继承

4、图图1.5多重继承程序图图1.6多层继承图图1.7多层继承程序图1.方法重载(Overloading)方法重载是让类以统一的方式处理不同类型数据的一种手段。Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不同个数和类型的参数来决定具体使用哪个方法,这就是多态性。图2.1方法重载图方法重载的规则:2.1不能通过访问权限、返回类型重载。但实际上虽然会提示输入有误,但强制程序时程序仍会执行。如图2.2所示:图2.2方法重载错误图2.2方法的异常类型和数目不会对重载造成影响;2

5、.3必须具有不同的参数列表;2.4可以有不同的返回类型,只要参数列表不同就可以了;2.5可以有不同的访问修饰符;2.6可以抛出不同的异常;1.方法的重载与重写的区别表3.1方法的重载与重写的区别序号区别点重载复写1单词OverloadingOverriding2定义方法的名称相同,参数的类型或个数不同方法名称、参数的类型、返回值类型全部相同3对权限没有要求被重写的方法不能用哦与更严格的权限4范围发生在一个类中发生在继承类中

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。