注解—@Override 准确覆写
为什么会有@Override?
如果子类Student需要覆写父类Object的toString方法:
class Student
{
public String tostring() //希望覆写toString,但是并没有报错
{
return "学生好好学习";
}
}
public class Annotation
{
public static void main(String[] args)
{
Student s=new Student();
System.out.println(s); //CODE.Java新特性.Student@4554617c 输出的对象地址,并美有覆写成功
}
}
可以看出并没有覆写成功。
而 @Override 是 当子类覆写父类方法时,此注解检查覆写的方法是否正确声明,只有满足覆写方法要求才会编译通过,否则编译出错。
@Override作用:
当用了@Override 会检查覆写方法声明正确性:
覆写方法声明正确编译不会报错:
<