重写(Override)
override翻译:(以权力)否决,推翻,不理会;比…更重要;凌驾;超驰控制,超控(使自动控制暂时失效,改用手工控制)
概念:在继承关系中,方法的名称一样,参数列表也一样
重写和重载的区别
重写(Override):方法的参数名称一样,参数列表也一样 ====一般习惯上叫覆盖重写
重载(Overload):方法名称一样,参数列表不一样
方法的覆盖重写特点:创建的是子类对象,则优先用子类方法
覆盖重写(Override)方法书写的注意事项:
1、根据概念我们可以得出覆盖重写的前提就是:在继承关系中,方法的参数名称一样,参数列表也一样有效的正确的方法覆盖重写,可选的安全检测手段:@Override
2、@Override:写在前面,用来检测是不是正确的覆盖重写
这个注释就算不写,只要满足要求,也是正确的方法覆盖
3、子类的方法返回值必须小于等于父类方法的返回值范围
java.lang.Object 类是所有类的公共最高父类,java.lang.String就是Object的子类
4、子类方法的修饰符权限,必须大于等于父类方法的修饰符权限(public > protected > (default) > private)
备注:default不是关键字,而是什么都不写,留空
重点说一下注意事项3
上图
子类的方法返回值必须小于等于父类方法的返回值范围
java.lang.Object 类是所有类的公共最高父类,java.lang.String就是Object的子类
牢记上面