在java或Android中有@Override注释.这是什么意思?我发现当方法来自子类或继承接口的方法时使用它,我想进一步了解其他是@SuppressWarnings它也是Anonation,如果是java使用了多少个annonation以及用于哪个目的.
Bri*_*acy 18
这个问题也在这里得到了解答,并且非常简洁: Android @Override用法
这是一个注释,您可以使用它来告诉编译器和IDE您希望该注释的方法是超类方法的重写.如果您犯了错误,它们会有警告/错误,例如,如果您打算覆盖方法但拼错它,如果注释在那里IDE或编译器会告诉您它实际上并不覆盖超类方法因此你可以确定原因并纠正拼写错误.
这对Android应用程序和活动来说更为重要,例如,所有调用都将基于活动生命周期 - 如果您没有正确覆盖生命周期方法,它们将永远不会被框架调用.一切都会正常编译,但你的应用程序将无法按照你想要的方式工作.如果添加注释,则会出现错误.
换句话说,如果添加@Override,这有助于确保您真正覆盖现有方法!非常有用.
覆盖意味着您正在更改从父类继承的方法的行为,而不更改签名.@Override注释用于标记此.它与多态性的概念密切相关.例:
public class A {
public void foo() {
System.out.println("A");
}
}
public class B extends A {
@Override
public void foo() { // I want to change the way foo behaves
System.out.println("B"); // I want to print B instead of A
}
}
public static void main(String[] args) {
A a = new A();
a.foo(); // prints A
A b = new B(); // I can use type B because it extends A
b.foo(); // I have overriden foo so it prints B now
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14354 次 |
| 最近记录: |