
文章插图
Java知识点之重写注意事项!方法的重写方法的重写
- 子类的方法必须与父类的方法一致,方法体不同 。
- 参数列表必须相同
- 修饰符可以扩大,但是不可以缩小
- public > protected >default >private
- 抛出的异常范围可以缩小,但是不能扩大 : ClassNotFoundException–>Exception(大)
- 重写是方法的重写,与属性无关
- 重写方法只与非静态方法有关,与静态方法无关(静态方法不能被重写)
- 被 **static(属于类,不属于实例),final(常量方法),private(私有的)**修饰的方法不能被重写
public static void test(){ //静态方法
System.out.println("B==>test()");
}
}
``
public class A extends B{ //继承public static void test(){System.out.println("A==>test()");} } 重写:子类的方法必须跟父类保持一致 :方法体不同被**static(属于类,不属于实例),final(常量方法),private(私有)**修饰的方法不能重写
为什么重写?
- 重写:子类继承父类以后,可以对父类中同名同参数的方法进行覆盖操作 。
- 应用:重写以后,当创建子类对象以后,通过子类对象调用父类中同名同参数的方法时,实际上执行的是子类重写父类的方法 。
- 在同一个类中
- 方法名相同,但是行参列表不同
- 方法的返回值,访问修饰符任意
- 与方法参数名无关
- 有继承关系的子类中
- 方法名相同,参数列表相同(参数顺序,类型,个数),方法的返回值要相同
- 访问修饰符,访问范围子类需要大于父类的访问范围
- 与方法的参数名无关
- 方法重写 :子类继承父类以后,可以对父类同名同参数的方法进,行覆盖操作
- 应用: 重写以后,当创建子类对象时,通过子类对象调用父类同名同参数的方法时,实际执行的是子类重写父类的方法
- 重写的规定 :
- 权限修饰符 返回值类型 类名(行参列表 )throws 异常的类型{
//方法体
}
约定俗称:子类中叫重写的方法,父类中叫被重写的方法 。
①子类重写的方法名和行参列表和父类被重写的方法名和行参列表相同 。
②子类重写的方法的权限修饰符不小于父类被重写的方法的权限修饰符 。
子类不能重写父类中声明为private的权限的方法 。
③返回值类型:
父类被重写的方法的返回值是void,则子类中重写的方法的返回值也是void 。
父类被重写的方法的返回值是A类型,则子类中重写的方法的返回值类型是A类型或者是A类的子类 。
父类被重写的方法的返回值是基本数据类型(比如double),则子类重写的方法的返回值必须是相同的 。
④子类重写的方法抛出的异常类型不大于父类被重写的方法抛出的异常 。(具体细节在异常处理)
【如何理解深度工作 方法的深度理解】⑤子类和父类中同名同参数的方法要么都声明为非static(考虑重写),要么都声明为static(不考虑重写)
- 权限修饰符 返回值类型 类名(行参列表 )throws 异常的类型{
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
