码迷,mamicode.com
首页 > 其他好文 > 详细

方法的重写、重载。

时间:2020-07-07 12:51:34      阅读:63      评论:0      收藏:0      [点我收藏+]

标签:特性   system   特殊情况   data   href   vat   关键字   默认   ref   

方法的重载就是方法名相同,但参数类型和参数的个数不同。

方法的重载,既可以发生在普通方法上,也可以发生在构造方法上。方法的重载,既可以发生在同类中,也可以发生在父子类中。

Java方法的重载:返回类型、修饰符可以相同,也可不同。要求同名的方法必须有不同的参数表,仅有返回类型不同是不足以区分两个重载的方法。

System.out.print();方法也属于重载方法。

方法的重写是指两个方法的返回值、方法名、参数的类型和个数相同(子类重写父类的方法)。
方法的重写,不能发生在同类中,只能发生在子类中。
若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法。 如需父类中原有的方法,可使用super关键字,该关键字引用了当前类的父类。
方法重写的权限:子类中的权限大于或等于父类的权限,(修饰符高低:private < 默认修饰符<protected < public)
特殊情况:子类不能重写父类被声明为private权限的方法

方法重写与方法重载区别

方法的重载是方法的参数个数或类型不同,方法名相同。
方法重写是要注意权限的问题,子类中的权限不能小于父类的权限,当父类的权限为private时,子类无法继承。也就无法产生所谓的重写。(修饰符高低:private < 默认修饰符 < public)
关于方法重写的一些特性:
1.发生方法重写的两个方法返回值、方法名、参数列表必须完全一致(子类重写父类的方法)
2.子类抛出的异常下不能超过父类相应方法抛出的异常(子类异常不能大于父类异常)
3.子类方法的访问级别不能低于父类相应方法的访问级别(子类访问级别不能低于父类访问级别)
根据2,3条可以确定第一条,子类重写父类方法的返回值类型不能大于父类方法的返回值类型,即是说子类方法的返回值必须和父类方法的返回值相同或是其子类。

 

方法的重写、重载。

标签:特性   system   特殊情况   data   href   vat   关键字   默认   ref   

原文地址:https://www.cnblogs.com/wangffeng293/p/13259905.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!