您的位置:首页 > 编程语言 > Java开发

java中重载与重写的区别

2015-07-03 17:47 253 查看

OOP三大特性:继承,多态,封装。

重载(Overloading):多态性的一种表现。(静态多态性)

同名不同参:方法名要一样,但是参数类型和个数不一样,返回值类型可以相同也可以不相同。无法以返回型别作为重载函数的区分标准。

1.可以有不同的访问修饰符;

2.可以抛出不同的异常;

重写(Overriding[b]覆盖):父类与子类之间的多态性。(动态多态性)[/b]

1.[b]子类对父类的函数进行重新定义,具有相同的方法名、返回类型和参数表。[/b]

2.如需父类中原有的方法,可使用super关键字,该关键字引用了当前类的父类。
3.子类函数的访问修饰权限不能少于父类的;(public>protected>default>private)
4.重写方法只能存在于具有继承关系中,重写方法只能重写父类非私有的方法。
5.父类的一个方法申明了一个检查异常IOException,在重写这个方法时就不能抛出Exception,只能抛出IOException的子类异常,可以抛出非检查异常。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: